现在的位置: 首页 > 综合 > 正文

继承概念与方法的重写小结

2017年11月30日 ⁄ 综合 ⁄ 共 837字 ⁄ 字号 评论关闭

1. extends :英文的意思是扩展而不是继承,很好的体现了子类与父类的关系,子类是对父类的扩展,从这个意义上看,使用继承来描述子类与父类的关系是错误的,用扩展更恰当。

在继承的基础上才又方法的重写(子类,父类)

2.方法的重写:

                     原则:两同,两小,一大

                            两同:方法名,形参列表相同。

                            两小:子类方法返回值类项应比比父类方法返回值类型更小或相等。

                                       子类方法声明抛出异常类项应比父类方法声明抛出类型更小或相等。

                            一大:子类方法的访问权限应比父类更大或相等。

3.重写方法的属性要求:

覆盖的方法和被覆盖的方法要么都是实例方法或者都是类方法,不能一个是实例方法,一个是类方法,否则会引起编译错误。

 

4.重写的后果:

java的子类不能获得父类的构造器:

既:

子类覆盖父类方法后,子类对象无法访问父类中被覆盖的方法。但是可以在子类方法中调用父类被覆盖的方法。

子类调用父类被覆盖的方法:被覆盖的是实例方法:用super

                                                被覆盖的是类方法:用类名

注意访问与调用的区别

5.如果父类的方法被private 修饰,则该方法对子类是隐藏的,因此子类无法访问该方法,也就是无法重写该方法。如果子类中定义了一个与父类private方法具有形同名称和参数列表的方法,依然不是重写只是在子类中定义了一个新的方法。

 

重写是发生在子类和父类的同名方法之间。

重载是发生在同一个类得多个同名方法之间。

父类方法与子类方法也有可能发生重载,因为子类会获得父类的方法,如果子类定义了一个与父类方法具有相同的方法名,但参数列表不同的方法就会形成父类方法与子类方法的重载。

【上篇】
【下篇】

抱歉!评论已关闭.