Java学习笔记我爱编程Java学习笔记

读书笔记 | 《Think in Java》Ⅶ 复用类

2018-04-16  本文已影响30人  寒食君
信仰牌咖啡

Ⅶ 复用类

复用代码是Java众多引人注目的功能之一,Java的代码复用都是围绕类来展开的。所以很多时候,不需要重复去造轮子,而是可以直接调试使用他人写好的类库框架。当然,在现阶段,自己动手才是最好的学习方式。

Java的代码复用方式主要有两种:

  1. 组合:在新的类中产生现有类的对象。
  2. 继承:通过现有的类型来创建新类。

7.1 组合语法

  1. 在定义对象的地方,这将在调用构造器之前被初始化。
class Wheel{
  private String type;
  Wheel{}{
  }

//
Class Car{
  private Wheel w=new Wheel();
}
}
  1. 在类的构造器中。
class Wheel{
  private String type;
  Wheel{}{
  }

//
Class Car{
  private Wheel w;
  Car (){
    this.w=new Wheel();
  }
`}
}
  1. 在需要使用到这些对象时,这种被称为惰性初始化。

7.2 继承语法

7.3 代理

7.4 结合使用组合和继承

7.7 向上转型

7.8 final关键字

在不同的上下文环境中,final有着细微的区别,它通常是来表示“不可改变的”,当然也存在着特殊的情况。

final一般有三种使用场景:数据、方法、类。

7.8.1 数据
static Random rand=new Random(10);
final int a=rand.nextInt(10);
7.8.2 方法
  1. 锁定方法,防止在继承类中被重写。(这是出于一些情况的设计,需要确保在继承中此被继承方法的功能不变)
  2. 过去使用final修饰方法可能是出于效率的考量,但是现在并不是很需要。(如果将一个方法指明为final,就是同意编译器将针对该方法的所有调用都转为内嵌调用。在后续版本中这样效率反而降低,已经不需要了。)
7.8.3 类

7.10 总结


扫一扫,关注公众号

小白的成长探索之路。

上一篇 下一篇

猜你喜欢

热点阅读