202205-07 手把手带你粗略了解Java--类和对象 目录认识类和对象1.类、对象是什么?2.什么是面向对象?3.一个对象的产生过程是?🔺OOP语言的三大特征?类和对象的实例化类的定义:注意:实例化对象:①如何访问对象中的实例成员变量?②如何访问静态的数据成员?注意:方法:实例成员方法:静态成员方法🔺构造方法①访问实例成员方法②访问静态成员方法static关键字1.修饰属性:静态成员变量只有一份:2.修饰方法:this关键字this使用方法:举例1举例2getter... 继续阅读 >
202112-11 一篇文章带你深入了解Java对象与Java类 目录1.面向对象是什么?2.Java类1.什么是类2.Java类类的结构Java类的格式3.java对象4.类和对象5.类中的变量,方法1.变量分类成员变量:局部变量:2.方法分类6.方法重载7.对象与引用基本类型和引用类型的区别:值传递与引用传递8.static关键字概念static属性static方法代码块9.类的加载执行10.包包的概念:包的作用:包(package)的命名规范:访问权限修饰符11.面向对象语言的三大特征1.封装2.多态3.继承12.类于类之间的关系1.关... 继续阅读 >
202110-15 Java Long类型对比分析 JavaLong类型对比在开发的到一个很基础的问题在代码中,两个Long类型数据比较用“==”,结果有时候true有时候false,原本以为Long会自动转long然后再比较,不会是这里的错,找来找去实在找不到其他原因了,我就打印这两个Long类型出来看,果然是不相等,于是脸黑了一阵......去查了一下资料,原来是这样:Java基本类型的包装类的大部分都实现了常量池技术,即Byte,Short,Integer,Long,Character;这5种包装类默认创建了数值[-128... 继续阅读 >
202110-12 带你入门Java的类与对象 目录类和对象类的属性成员方法形参和实参局部变量可变参数构造方法this关键字this.属性名this.方法名this()访问构造方法static关键字静态变量1)静态变量2)实例变量静态方法静态代码块对象的创建显式创建对象方法隐含创建对象总结匿名对象总结类和对象在面向对象中,类和对象是最基本、最重要的组成单元。类实际上是表示一个客观世界某类群体的一些基本特征抽象。对象就是表示一个个具体的东西。所以说类是对象的抽象,对象是类... 继续阅读 >
202110-12 新手了解java 类,对象以及封装基础知识 目录1、类2、对象3.方法的重载什么是方法的重载4、构造器什么是构造方法构造方法语法:构造方法特点5.thisthis指代当前对象,即哪个对象调用就指代哪个对象6.封装封装的作用怎么封装步骤总结1、类什么是类类是具备某些共同特征的实体的集合,是对所具有相同特征实体的抽象。Java中定义类的基本语法访问修饰符class类名{}publicclassStudent{//定义了一个学生类}成员变量成员变量就是对象所拥有的属性基本语法访... 继续阅读 >
202109-19 Java String类用法详解 一、简介零碎知识点extendsObjectimplementsserializable,Comparable<String>,charSequenceString类表示字符串,所有字符串文字都是此类的对象字符串是不变的,值在创建后无法更改对象一旦声明则不可改变,改变的只是地址,原来的字符串还是存在的,并且产生垃圾任何一个“”都为字符串对象,无赋值则为匿名对象用“+”拼接字符串尽量避免,一般用append+toStringStringBuilder(线程不安全... 继续阅读 >
202109-17 Java并发编程之详解ConcurrentHashMap类 前言由于Java程序员常用的HashMap的操作方法不是同步的,所以在多线程环境下会导致存取操作数据不一致的问题,Map接口的另一个实现类Hashtable虽然是线程安全的,但是在多线程下执行效率很低。为了解决这个问题,在java1.5版本中引入了线程安全的集合类ConcurrentMap。java.util.concurrent.ConcurrentMap接口是Java集合类框架提供的线程安全的map,这意味着多线程同时访问它,不会影响map中每一条数据的一致性。ConcurrentMap接... 继续阅读 >
202109-13 浅谈Java类的加载,链接及初始化 一 类生命周期LoadingLinking(Verification、Preparation、Resolution)Initializing二 类加载器1 图解2 代码packagejvm;publicclassT002_ClassLoadLevel{publicstaticvoidmain(String[]args){System.out.println(String.class.getClassLoader());System.out.println(sun.awt.HKSCS.class.getClassLoader());System.out.println(sun.net.spi.nameservice.dns.DNSNameS... 继续阅读 >
202109-09 Java并发编程之Executors类详解 一、Executors的理解Executors类属于java.util.concurrent包;线程池的创建分为两种方式:ThreadPoolExecutor和Executors;Executors(静态Executor工厂)用于创建线程池;工厂和工具方法Executor,ExecutorService,ScheduledExecutorService,ThreadFactory和Callable在此包中定义的类;jdk1.8API中的解释如下: 二、Executors类图结构三、Executors常用的方法publicstaticExecutorServicene... 继续阅读 >
202108-31 Java有哪些操作字符串的类?区别在哪? 操作字符串的类都有哪些?区别是什么?操作字符串的类主要用三个,分别是String类,StringBuffer类和StringBuilder类.不可变字符串String类publicclassStringTest{publicstaticvoidmain(String[]args){Strings1="abc";Strings2="abc";Strings3=newString("abc");System.out.println(s1==s2);//trueSystem.out.println(s2==s3);//falses2="a... 继续阅读 >
202108-31 详解Java抽象类与普通类的区别 浅谈抽象类在面向对象概念中,所有的对象都是通过类来描述的,但是反过来,并不是所有的类都是用来描述对象的.如果一个类中没有足够多的信息来描述一个具体的对象,这样的类就是抽象类。看到这里可能还是觉得有些难以理解,举个例子说明一下:说到动物你会想到什么?猫,狗,鸡鸭鹅?当然这些都可以.那么动物这两个字,你能确定一个具体的对象吗?显然不能.甚至更严格意义上讲,说到猫你会想到什么?橘猫,短美…毕竟:一千个人心... 继续阅读 >
202108-10 Java基础之Unsafe内存操作不安全类详解 简介Unsafe类使Java拥有了像C语言的指针一样操作内存空间的能力,直接操作内存就意味着1、不受jvm管理,也就意味着无法被GC,需要我们手动GC,稍有不慎就会出现内存泄漏。2、Unsafe的不少方法中必须提供原始地址(内存地址)和被替换对象的地址,偏移量要自己计算,一旦出现问题就是JVM崩溃级别的异常,会导致整个JVM实例崩溃,表现为应用程序直接crash掉。3、直接操作内存,也意味着其速度更快,在高并发的条件之下能够很好地提高效... 继续阅读 >
202108-08 又又???UG啦!理智分析Java NIO的ByteBuffer到底有多难用 目录一、前言二、API三、Netty的数据容器3.1工作原理四、内存池化五、字节级操作六、引用与释放一、前言ByteBuf是Netty当中的最重要的工具类,它与JDK的ByteBuffer原理基本上相同,也分为堆内与堆外俩种类型,但是ByteBuf做了极大的优化,具有更简单的API,更多的工具方法和优秀的内存池设计。二、APINetty的数据处理API通过两个组件暴露——抽象类ByteBuf和接口ByteBufHolder。ByteBufAPI的优点:它可以被用户自定... 继续阅读 >
202107-12 java基础之包装类的介绍及使用 1.包装类的介绍针对八种基本数据类型定义相应的引用类型--包装类(封装类),有了类的热点后,就可以调用类中的方法2.基本数据类型-->包装类:调用包装类的构造器,如in1.toString()使用场景:如果形参是一个object类类型的,必须要把基本类型转换成包装类才能传入到形参用3.包装类--> 基本数据类型:调用包装类的xxxValue()使用场景:包装类作为一个对象,不能做加减乘除运算的,必须转换成基本类型后才可以但jdk5已经... 继续阅读 >
202107-08 Java常用工具类总结 目录一、线程协作、控制并发流程的工具类二、CountDownLatch倒计时门闩三、Semaphore信号量四、Condition接口(又称条件对象)五、CyclicBarrier和CountDownLatch的区别一、线程协作、控制并发流程的工具类 什么是控制并发流程?控制并发流程的工具类,作用就是帮助我们程序员更容易得让线程之间合作让线程之间相互配合,来满足业务逻辑比如让线程A等待线程B执行完毕后再执行等合作策略二、CountDownLatch倒计时门闩倒数门:... 继续阅读 >
202107-04 Java基础之Math和Random类知识总结 java的Math类java中的java.lang.Math类可以直接使用,不需要导包,在JDK的API中看到Math类被final修饰着,那么说明了这个Math类不能被继承,构造器私有化,不能创建Math类的对象,也就是说publicstaticvoidmain(String[]args){Mathm=newMath();}这种写法是错误的Math内部的所有的属性和方法都被static修饰了,这说明在调用的时候直接使用类名.的方式直接调用,无需创建对象。接下来介绍Math类中的几个常用的方法:... 继续阅读 >