学习java第7天

时间:2023-03-09 03:56:25
学习java第7天

关于继承还需要留意的是,子类中的所有构造方法都默认访问父类的无参构造,注意是无参,而且是必须的,如果父类没有无参子类就会报错。如果你不想给父类无参构造,那么在子类中加上super(),显式的调用有参构造,关于继承可考的地方很多,比如子类的成员变量名称和父类中的成员变量名称一样,这个怎么访问呢? 子类的方法访问变量的查找顺序:在子类方法的局部范围找,有就使用。在子类的成员范围找,有就使用。在父类的成员范围找,有就使用。找不到,就报错。  那么就带来的一个问题,如果我们不想父类的方法被重写怎么办呢?,在java中我们可以使用final来限定该方法不能被重写,当然,我们也可以用final来修饰类,表示该类不能被继承。同理变量也可以。还有就是,我们一旦给的是引用类型加final 是它的地址值不变而不是数据。还要注意的是

方法重写和方法重载的区别?方法重载能改变返回值类型吗?

方法重写:
在子类中,出现和父类中一模一样的方法声明的现象。

方法重载:
同一个类中,出现的方法名相同,参数列表不同的现象。

方法重载能改变返回值类型,因为它和返回值类型无关。