6.6 Java9改进的接口 6.6.1 接口的概念 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.6 Java9改进的接口 6.6 Java9改进的接口 6.6.1 接口的概念 阅读全文 »
6.5.2 抽象类的作用 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.5 抽象类 6.5.2 抽象类的作用 模板设计模式 模板模式使用规则 阅读全文 »
6.5 抽象类 6.5.1 抽象方法和抽象类 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.5 抽象类 6.5 抽象类 什么是抽象方法 6.5.1 抽象方法和抽象类 抽象方法规则 抽象类规则 抽象方法和空方法的区别 小结 普通类前面加上abstract就可以变成抽象类 普通类 不能abstract一起使用的修饰符 final和abstract永远不能同时使用 没有抽象变量 没有抽象成员变量 没有抽象构造器 没有静态抽象方法 没有私有抽象方法 阅读全文 »
6.4.8 缓存实例的不可变类 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.4 final修饰符 6.4.8 缓存实例的不可变类 缓存不可变类的实例的意义 什么时候应该缓存 Integer中的缓存 推荐使用valueOf方法创建Integer实例 Integer缓存的范围 实例 自己实现一个缓存 阅读全文 »
6.4.7 不可变类 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.4 final修饰符 6.4.7 不可变类immutable 什么是不可变类 Java中的不可变类 如何自定义不可变类 什么是可变类 成员变量类型是可变类的情况 当成员变量的类型是可变的的时候如何设计不可变类 实例 阅读全文 »
6.4.6 final类 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.4 final修饰符 6.4.6 final类 阅读全文 »
6.4.5 final方法 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.4 final修饰符 6.4.5 final方法 Object类中的final方法 注意final修饰private方法的情况 private方法子类不可见无法重写 子类定义相同的private方法也不算重写 子类可以定义与父类同名的final修饰的private方法 final修饰的方法可以被重载 阅读全文 »
6.4.4 可执行 宏替换 的final变量 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.4 final修饰符 6.4.4 可执行 宏替换的 final变量 什么样的final变量可以当成直接量 编译器会将final直接量变量 直接 替换成对应的值 字符串直接量 final变量当成宏变量处理的情况 实例 阅读全文 »
6.4.3 fina修饰基本类型变量和引用类型变量的区别 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.4 final修饰符 6.4.3 fina修饰基本类型变量和引用类型变量的区别 final修饰基本类型变量时 基本类型变量不可变 final修饰引用类型变量时 引用变量不可指向其他对象 虽然引用变量不可指向其他对象 但对象的值可以改变 实例 阅读全文 »
6.4.2 final局部变量 发表于 2019-09-25 更新于 2019-10-14 分类于 疯狂Java讲义 (第4版) , 第6章 面向对象(下) , 6.4 final修饰符 6.4.2 final局部变量 不要在方法中对final形参赋值 实例 阅读全文 »