自学Java第十七课

今天学习了继承中的super关键字、访问特点、注意事项。

  super关键字的作用和this关键字很相似。this关键字用来访问本类中的成员变量,super用于继承中访问父类的内容。

public class fu {          public class  zi extends fu{          public class tset{

public fu() {              public zi(){                public static void main(String[] args){

System.out.println("f");         System.out.println("t");            zi z=new zi();
}                    }                    z.zi();
public fu(int age) {          public zi(int age){                super.fu(age);
System.out.println("u");        System.out.println("d");            }
}                }

super可访问成员变量、构造方法、成员方法。

构造方法访问的特点:子类中所有的构造方法默认都会访问父类中无参构造方法。每个子类构造方法第一条默认都是super()。

自学Java第十七课自学Java第十七课

 

 解决父类中没有无参构造的方法:①通过super()访问父类中的带参构造;②自己在父类中添加一个无参构造。

成员方法的访问特点:通过子类对象访问一个方法  子类成员范围->父类成员范围->报错。它比在方法中访问一个变量少一个步骤。

方法重写:子类中出现和父类中一摸一样的方法声明。     应用:子类需要父类的功能,而功能子类特有内容时。

public class phone{                                                          public class newphone extends phone{

                          @Override

   public void call(String name){            public void call(String name){

System.out.println("给"+name+"打电话");                                System.out.println("给"+name+"打电话") ;

}                           super.call(name);

}                            }

                             }

@Override 能够帮助我们检查方法重写声明的正确性。

注意事项:①私有方法不能被重写(父类私有方法不能被子类继承);②子类方法访问权限不能低于父类(public>默认>private,每一个方法之前都有一个默认访问权限)。

Java中继承的注意事项:①Java只支持单继承,并不支持多继承;son extends father,monther 错误。

②Java支持多层继承。father extends grandfather       son extends father  可以进行。

上一篇:JDK和CGLIB动态代理区别


下一篇:面试造火箭系列,栽在了cglib和jdk动态代理