在Java的学习过程中,我们常常需要用到继承,可以帮助我们减少代码量。
但是,在一些物品的属性我们难以用具体的语言描述,只能用抽象的特征概括,而用抽象的特征也可以帮助我们对代码进行重写。
首先,abstract抽象类有几个特性:
1,抽象类和抽象方法必须用abstract修饰,且抽象方法必须在抽象类中;
2,抽象方法只有方法头,没有方法体;
如果加上方法体,就会出现:Abstract methods cannot have a body错误。
3,抽象方法不能被new创建,因为抽象方法没有方法体;
我们以动物类中的猫举例:
package com.edu.jsu4;
public abstract class Animal {
private int age;
private String name;
public abstract void eat();
}
我们首先创建一个动物类,其中类和方法都用abstract修饰,且没有方法体。
其次创建一个猫类:
package com.edu.jsu4;
public class Cat extends Animal {
@Override
public void eat() {
System.out.println("你好");
}
}
package com.edu.jsu4;
public class main {
public static void main(String[] args) {
Cat cat=new Cat();
cat.eat();
}
}
最后我们运行程序,可得结果为:你好。