父类:
package Day1; public class Animal { private String name; private int 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 + "."); } }
子类:
package Day1; public class Penguin extends Animal { public Penguin(String myName, int myid) { super(myName, myid) ; } public void eat() { System.out.println("这货正在喝可乐"); } public void waterTest() { this.eat(); super.eat(); } public static void main(String[] args) { Animal obj1=new Animal("狗", 1); obj1.eat(); Penguin obj=new Penguin("猪", 1); obj.waterTest(); } }
子类继承父类主要的优点在于子类的拓展性较好,子类既可以继承父类方法,也可能在定义一些自己的方法。
需要注意的一点是,子类不能继承父类的构造器,父类的构造器分为无参和有参构造器,对于有参构造器必须使用super()将其进行实现。
this调用本类中的方法,super调用父类中的方法。
instanceof 严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例,用法为:
public class LnstanceofExp { public static void main(String[] args) { LnstanceofExp obj=new LnstanceofExp(); int i=1; System.out.println(obj instanceof LnstanceofExp); } }