Java 初学者-类与对象2

今天学习了什么?

今天学习了面向对象的继承的特征。

  继承格式

  class 类名 extends 父类名{

  类体;

}

  1. 1.B 类继承A类,则A类是超类,父类,基类。B类是子类,派生类,扩展类。

         2.只支持单继承,不支持多继承。

         3.子类继承父类,不能继承private与构造方法。

         4.Java中未继承的类默认继承Object类

  1. 方法重载:就是在同一个类中,方法的名字相同,但参数个数、参数的类型或返回值类型不同!

方法重写(覆盖):它是指子类和父类的关系,子类重写了父类的方法,但方法名、参数类型、参数个数必须相同!

  1. ● 方法覆盖发生在具有继承关系的父子类之间,这是首要条件;

 

●  覆盖之后的方法与原方法具有相同的返回值类型、相同的方法名、相同的形式参数列表;

 

● 另外,在使用方法覆盖的时候,需要有哪些注意事项呢?

 

● 由于覆盖之后的方法与原方法一模一样,建议在开发的时候采用复制粘贴的方式,不建议手写,因为手写的时候非常容易出错,比如在Object类当中有toString()方法,该方法中的S是大写的,在手写的时候很容易写成小写tostring(),这个时候你会认为toString()方法已经被覆盖了,但由于方法名不一致,导致最终没有覆盖,这样就尴尬了;

 

● 私有的方法不能被继承,所以不能被覆盖;

 

● 构造方法不能被继承,所以也不能被覆盖;

 

● 覆盖之后的方法不能比原方法拥有更低的访问权限,可以更高(学习了访问控制权限修饰符之后你就明白了);

 

● 覆盖之后的方法不能比原方法抛出更多的异常,可以相同或更少(学习了异常之后就明白了);

 

● 方法覆盖只是和方法有关,和属性无关;

 

● 静态方法不存在覆盖(不是静态方法不能覆盖,是静态方法覆盖意义不大,学习了多态机制之后就明白了);

明天计划学习什么?

计划学习面向对象的最后一个特征多态。 

 

posted @ 2020-07-16 15:00  好吗,好  阅读(149)  评论(0)    收藏  举报