Java中对象是类的具象化,某些类不具备实例化的意义,因此使用抽象类限制实例化。
- 抽象类:
- 创建抽象类的时候需要添加abstract关键字
- 不能进行实例化(new对象)
- 抽象类中某些方法需要子类进行实现,父类实现没有意义,此时可以将抽象类中方法定义为抽象方法,没有具体的实现,只包含方法名称,返回值,参数列表,访问修饰符
- 子类在继承抽象父类的时候,必须将父类抽象方法进行实现或将子类也定义为抽象类
- 抽象方法:
- 抽象方法必须在抽象类里
- 抽象方法必须在子类方法中实现,除非子类是也是抽象方法
- 抽象方法没有方法体
public abstract class Pet {
private String name;
private int age;
public abstract void eat();
public void print(){
System.out.println("print Pet!");
}
}
public class Dog extends Pet{
@Override
public void eat() {
System.out.println("dog is eating");
}
}
public class AbstractTest {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat();
dog.print();
}
}
-
输出:
image.png
网友评论