继承的概念
继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。
继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
生活中的继承:
兔子和羊属于食草动物类,狮子和豹属于食肉动物类。
食草动物和食肉动物又是属于动物类。
所以继承需要符合的关系是:is-a,父类更通用,子类更具体。
虽然食草动物和食肉动物都是属于动物,但是两者的属性和行为上有差别,所以子类会具有父类的一般特性也会具有自身的特性。
话不多说,上代码。
1.先写一个父类,动物类
public class Animal {
private String name;
private int id;
public Animal(String name, int id) {
this.name = name;
this.id = id;
}
public void eat(){
System.out.println(name+"正在吃");
}
public void sleep(){
System.out.println(name+"正在睡");
}
public void introduce(){
System.out.println("大家好"+id+"号"+name+".");
}
}
2.写一个猫类,子类,可以继承父类的方法,也可以自定义方法
public class Cat extends Animal {
public Cat(String name, int id) {
super(name, id);
}
public void eat(){
System.out.println("我在吃鱼");
}
}
3.写一个企鹅类,子类,可以继承父类的方法,也可以自定义方法
public class Penguin extends Animal {
public Penguin(String name, int id) {
super(name, id);
}
public void sport(){
System.out.println("我在南极看北极熊跳舞");
}
}
4.写一个测试类
public class Test {
public static void main(String[] args) {
Cat cat = new Cat("小懒猫",1);
cat.introduce();
cat.eat();
cat.sleep();
Penguin penguin = new Penguin("李逵小企鹅",123);
penguin.introduce();
penguin.sport();
penguin.sleep();
}
}
5.运行结果如图