读《Java编程思想》总结------第七章(复用类)

复用类的方式是有两种的,第一种是组合的方式,即我们在一个类中创建要复用类的对象,第二种就是继承的方式(实际上还有一种关系被称为代理,但是java并没有提供对它的直接支持)。

当创建一个类时总是在继承,因此除非已明确指出要从其它类中继承,否则就是隐式地从java的标准根类Object进行继承。

在继承类中,一般的规则是把所有的数据成员都指定为private,将所有的方法指定为public。

组合技术通常用于想在新类中使用现有类的功能而非它的接口这种情形。

在继承时,如果使用某个现有类并开发它的特殊版本,通常意味着你在使用一个通用类,并为了某种特殊需要而将其特殊化

由导出类(子类)转型成基类(父类),在继承图上是向上移动的,因此一般称为向上转型

例如:Map map = new HashMap();List list = new ArrayList()。

到底该使用组合还是继承,一个最清晰的判断方法是问一问自己是否需要从新类向基类进行向上转型,如果必须向上转型,则继承是必要的,如果不需要,则应当好好考虑自己是否需要继承。

一个既是static又是final的域只占据一段不能改变的存储空间。被final修饰的类是不能被继承的,例如String类就是。

 

 

 

你可能感兴趣的:(《Java编程思想》总结)