单继承,顾名思义就是一个类继承另一个类的属性和方法(private属性需要使用getter访问),子类可以直接对父类的方法进行重写。重写后,当子类要调用父类的同名方法时,可以使用super关键字和this关键字进行区分调用
构造器是不能继承的,当父类带有含参构造器是,子类在继承时需要声明一个含参构造器(参数列表与父类一致,在方法中使用super关键字调用父类的含参构造器),每个类都默认有一个无参构造器,不用声明也有。构造方法在实例化对象的时候就会被调用到
classDog{
public Dog(String name){//声明一个含参构造器
System.out.print(name);
}
public void learning(){//成员方法
System.out.print("eating...");
}
public static void main(String[]args){
Dogd=new Dog("bobby");//实例化是需要传入一个String类型的参数,因为构造器需要接收有一个String参数
d.learning();
}
}
public class Pepole extends Dog{
public Pepole(String name){
super(name);//子类继承时同样需要一个含参构造器,并用super对应上父构造器参数类型和数量
}
public void learning(){//重写成员方法
System.out.print("learning");
}
public void learning test(){
this.learning();//访问本地learning方法
super.learning();访问父类learning方法
}
public static void main(String[]args){
Pepolep=new Pepole("co");
}
}