<七>类的复用

1.      组合语法:在一个类中定义并使用另一个类的对象作为成员变量,这种方式称为类的组合。

2.      组合语法中的初始化,在定义对象的地方初始化对象的引用;在类的构造方法中初始化对象的引用;在使用这些对象的时候进行惰性初始化。

3.      继承语法:继承是面向对象程序设计的一个重要语法,所有类都继承于object类;类的继承使用关键字extends。

4.      继承类可以覆盖父类中的方法,也可以自定义新的方法,同时还可以在方法中通过super关键字调用父类的同名方法。

5.      基类的初始化:在使用继承类时,基类的构造方法总会被调用,同时总是在继承类构造方法调用之前被调用。

6.      带参数的构造方法:如果父类没有默认的构造方法或者子类需要调用父类带参数的构造方法,就必须使用关键字super()显式的编写调用基类的构造方法语句,并且配以适当的参数。

7.      代理语法:将一个成员对象置于所要构造的类中,但与此同时我们在新类中暴露了该成员的所有方法

8.      组合和继承常常可以一起组合使用来构造更加复杂的类。

9.      方法的重载:javaSE5中添加了@override注解,来标示方法的覆写。

10.  向上转型:由导出类向上转型为基类类型的过程。比如在父类的一个方法中传递的是一个父类的对象,但在子类使用时传递的是一个子类的对象,此时子类对象类型被迫向上转型为父类类型。由于子类是父类的一个超集,所以这种转型总是安全的。

11.  Final关键字:final数据,表示这块数据恒定不变,对于限定给对象时,是指对象的引用不能指向其他对象了,但是该对象自身的内容是可以改变的。

Final参数,java允许在参数列表中以声明的方式将参数指明为final。这意味着你无法在方法中更改参数引用所指向的对象。

12.  Final方法:使用final方法有两个原因。一、把方法锁定,以防止任何继承类修改它的含义,或覆盖它。二、final方法能提高效率。当编译器发现一个final方法调用命令时,它会根据自己的谨慎判断,跳过插入程序代码这种正常方式而执行方法调用机制(将参数压入栈,跳至方法代码处并执行,然后跳回并清理栈中的参数,处理返回值),并且以方法体中的实际代码的副本来替代方法调用。

13.  类中所有的private方法都隐式指定为final的。所以一个private方法不能被覆盖。

14.  Final类:当某个类的整体定义为final时,就表明了该类不能被继承,该类中的所有方法也被隐式指定为final的。

15.  继承与初始化:编译一个类时,编译器会按照继承关系一层一层的往上加载该类所涉及到的基类,然后从根基类往下的导出类一次初始化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值