7复用类-Java编程思想

来源:互联网 发布:美国cpi数据 编辑:程序博客网 时间:2024/05/16 01:56

复用主要有两种形式:组合和继承。新的类是由现有的类的对象组成;用现有类的形式添加新代码。 

对于继承需要额外注意的是,子类继承了父类,当new子类的时候,父类的构造器会被调用。

判断是使用组合还是继承的时候,思考是否需要从新类向基类向上转型。

final关键字:通常指的是这是无法改变的。不想改变出于两个目的:设计和效率。

final数据:很多编程语言都有某种方法,来向编辑器告知数据是恒定不变的。例如永不改变的编译时常量,例如运行时被初始化的值,不希望它发生改变。

对于编译时常量,必须是基本数据类型,必须在定义时候赋值,用final关键字表示。

一个既是static又是final的域只占有一段不能改变的存储空间。既是static又是final的域需要用大写表示。强调只有一份。

当对对象使用final而不是对基本数据类型使用final的时候,使引用不变,即一个引用被初始化指向一个对象,它无法指向另外一个对象。然而对象本身是可以被修改的。

Java允许存在空白final,声明为final但又没有给定初值。但是在使用前必须初始化。这种方式提供了更多的灵活性。private final int j;然后把初始化过程放在构造器中。

final参数,在参数列表中以声明的方式将参数指定为final。在方法中无法更改参数所指向的对象。void with(final MethodA a){a=new MethodA()"//WRONG!

使用final方法的原因,把方法锁定,防止任何继承类修改含义,这是出于设计的考虑,确保继承中方法不变,不会被覆盖。类中所有的private方法都隐式,由于无法取用private,所以也就无法覆盖。

如果某个方法是private,它就不是类的接口的一部分。它只是隐藏在类中的程序代码。

final类,当某个类被整体定义为final,就表明不打算继承该类,不存在子类。

0 0