1. 用Abstract关键字来修饰一个类时,该类称为抽象类;用Abstract关键字来修饰一个方法时,该方法称为抽象方法;
2. 含有抽象方法的类必须被声明为抽象类,抽象类必须被继承,抽象方法必须被重写;
3. 抽象类不能被实例化;
4. 抽象方法只需要声明,不需要实现;
5.Demo
Demo_1
class Animal{
private String name;
public Animal(String name) {
super();
this.name = name;
}
public abstract void enjoy();
}
// 错误
Demo_2
abstract class Animal{
private String name;
public Animal(String name) {
super();
this.name = name;
}
public abstract void enjoy();
}
// 正确
Demo_3
abstract class Animal{
private String name;
public Animal(String name) {
super();
this.name = name;
}
public abstract void enjoy();
}
class Cat extends Animal{
private String furColor;
public Cat(String name, String furColor) {
super(name);
this.furColor = furColor;
}
@Override
public void enjoy() {
// TODO Auto-generated method stub
}
}
class Dog extends Animal{
private String eyesColor;
public Dog(String name, String eyesColor) {
super(name);
this.eyesColor = eyesColor;
}
@Override
public void enjoy() {
// TODO Auto-generated method stub
}
}
public class Test2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Dog d = new Dog("bigYelwow","Yellow"); // 正确
Animal a = new Animal("cat"); // 错误
}
}
浙公网安备 33010602011771号