
JAVA基础
文章平均质量分 63
发财猪猪
做个小笔记呀~
展开
-
序列化
目录为什么serialVersionUID不能随便改 为什么serialVersionUID不能随便改 在进⾏反序列化时, JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进⾏⽐较, 如果相同就认为是⼀致的, 可以进⾏反序列化, 否则就会出现序列化版本不⼀致的异常, 即是InvalidCastException 当实现java.io.Serializable接口的类没有显式地定义⼀个serialVersionUID变量时候, Java序列化机制会原创 2021-02-23 17:53:48 · 70 阅读 · 0 评论 -
compare
目录comparable 和 Comparator的区别Comparator定制排序重写compareTo方法实现按年龄来排序 comparable 和 Comparator的区别 comparable接口实际上是出自java.lang包 它有一个 compareTo(Object obj)方法用来排序 comparator接口实际上是出自 java.util 包它有一个compare(Object obj1, Object obj2)方法用来排序 一般我们需要对一个集合使用自定义排序时,我们就要重写co原创 2021-02-23 17:53:04 · 171 阅读 · 0 评论 -
时间类
目录SimpleDateFormat的线程安全性问题解决办法为什么不适用Date()yyyy和YYYY有什么区别 SimpleDateFormat的线程安全性问题 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ROGvRns3-1614073834046)(11.时间类.assets/12531)] SimpleDateFormat中的format方法在执行过程中,会使用一个成员变量calendar来保存时间 解决办法 使用局部变量 加锁 ThreadLocal保证每个原创 2021-02-23 17:51:00 · 101 阅读 · 1 评论 -
动态代理
目录cglib(继承)动态代理(接口) cglib(继承) public class MainTest { /** * 定义一个普通类 */ static class Koukou { public void play() { System.out.println("一般的扣儿"); } } /** *原创 2021-02-23 17:48:52 · 77 阅读 · 0 评论 -
内部类
目录普通内部类特点代码静态内部类特点代码匿名内部类特点代码局部内部类特点代码 普通内部类 特点 实例化依赖于外部类 可以定义成员变量,成员方法,成员类 不能定义静态变量,静态方法,静态类 可以访问外部类的所有变量和方法 代码 public class MainTest { public class InnerClass { } } 静态内部类 特点 实例化不依赖外部类 可以定义所有变量,所有方法,所有类 可以访问外部类的静态变量和静态方法 不能访问外部原创 2021-02-23 17:45:37 · 59 阅读 · 0 评论 -
IO流
目录IO流按操作方式分类结构图按操作对象分类结构图字符流、字节流字节与字符字节流字符流互相转换同步、异步阻塞、非阻塞BIO,NIO,AIOBIONIOAIO IO流 按操作方式分类结构图 按操作对象分类结构图 字符流、字节流 字节与字符 Bit最小的二进制单位 ,是计算机的操作部分。取值0或者1 Byte(字节)是计算机操作数据的最小单位由8位bit组成 取值(-128-127) Char(字符)是用户的可读写的最小单位,在Java里面由16位bit组成 取值(0-65535) 字节流 操作byt原创 2021-02-23 17:42:36 · 147 阅读 · 1 评论 -
异常处理
目录Java 异常类层次结构图ErrorException可检查异常 (Exception)不可检查异常 ( RuntimeException )异常处理注意事项谨慎使用异常处理try和finallyfinally的执行顺序finally和try都有return如果在finally里面对将要return的变量做了修改,返回的是修改后的值吗finally 块不会被执行的情况 Java 异常类层次结构图 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p1pPOZ3Y-161407原创 2021-02-23 17:33:53 · 72 阅读 · 0 评论 -
hashCode、equals和==
目录==equals关于String的equalshashCode()为什么要有 hashCodehashCode()与 equals()的相关规定为什么重写equals()必须也重写hashCode() == 它的作用是判断两个对象的地址是不是相等 基本数据类型比较的是值,引用数据类型比较的是内存地址 equals 类没有覆盖 equals() 方法。则通过 equals() 比较该类的两个对象时,等价于通过“==”比较这两个对象 类覆盖了 equals() 方法。一般,我们都覆盖 equals()原创 2021-02-23 17:28:08 · 72 阅读 · 0 评论 -
关键字
目录finaltransientthissuperOverride(重载)Overload(重写)public,protected,default,privatestatic修饰成员变量和成员方法静态代码块静态内部类静态导包 final 类不能被继承,final类中的所有成员方法都会被隐式的指定为final方法 方法不能被重写,所有的private方法都隐式地指定为final 变量是常量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能让其指向另原创 2021-02-23 17:26:40 · 92 阅读 · 0 评论 -
字符串
目录String创建方式String对“+”的重载String的长度限制internString,StringBuilder和StringBuffer的区别可变性线程安全性性能对于三者使用的总结 String 创建方式 引号创建String a = "a" 在字符串常量池里面创建a 返回指向a的引用 new创建(不推荐使用)String a = new String("a") 在字符串常量池里面创建a 在堆中新建一个String实例,指向a 返回堆中String实例的引用 new创建(不推荐使原创 2021-02-23 17:21:06 · 78 阅读 · 0 评论 -
基本数据类型
目录空间大小与对应关系boolean 占用空间大小装箱与拆箱整形、非整形和Boolean的不同实现 空间大小与对应关系 byte(1字节) Byte short(2字节) Short char(2字节) Character int(4字节) Integer long(8字节) Long float(4字节) Float double(8字节) Double boolean(未定) Boolean boolean 占用空间大小 java规范中,没有明确指出boolean的大小。在《Java虚拟机规范》给原创 2021-02-23 17:14:08 · 76 阅读 · 0 评论 -
基础概念
目录面向对象和面向过程的区别面向过程性能比面向对象高?面向对象编程三大特性封装继承关于继承如下 3 点请记住:多态Java 的值传递JVM什么是JVM什么是字节码?采用字节码的好处是什么?Java 程序从源代码到运行的三大步骤JITAOTJDK 和 JRE构造器作用是什么若一个类没有声明构造方法,该程序能正确执行吗? 为什么构造方法有哪些特性是否可被 override(重载)在 Java 中定义一个不做事且没有参数的构造方法的作用在调用子类构造方法之前会先调用父类没有参数的构造方法,其目的是什么类变量,成员原创 2021-02-23 17:08:22 · 72 阅读 · 0 评论