子类不能直接继承父类中的 private 属性和方法。
/**建立一个公共动物父类*/ public class Animal { private String name; private int id; /*由于name和id都是私有的,所以子类不能直接继承, 需要通过有参构造函数进行继承*/ public Animal(String myname,int myid) { name = myname; id = myid; } public void eat() { System.out.println(name+"正在吃"); } public void sleep() { System.out.println(name+"正在睡"); } public void introduction() { System.out.println("大家好!我是" +id+"号"+name +"."); } }
子类 Penguin 需要通过关键字 super 进行声明
public class Penguin extends Animal { public Penguin(String myname,int myid) { super(myname,myid); // 声明继承父类中的两个属性 } }
具体通过有参构造函数进行继承。
public class PenguinQQ { public static void main(String[] args) { // TODO Auto-generated method stub Penguin QQ = new Penguin("小冰",10086); //调用一个有参构造方法 QQ.eat(); QQ.sleep(); QQ.introduction(); } }
运行结果:
小冰正在吃 小冰正在睡 大家好!我是10086号小冰.