Java中abstract
时间: 2024-05-13 08:18:19 浏览: 71
在Java中,abstract是一个关键字,用于定义抽象类和抽象方法。
抽象类是不能被实例化的类,它只能作为其他类的父类来使用。抽象类中可以包含抽象方法和非抽象方法。抽象方法是没有方法体的方法,必须在子类中被实现。如果一个类继承了抽象类,那么它必须实现所有抽象方法,否则该类也必须声明为抽象类。
例如:
```
public abstract class Animal {
public abstract void makeSound();
public void sleep() {
System.out.println("zzz");
}
}
public class Cat extends Animal {
public void makeSound() {
System.out.println("Meow");
}
}
public class Main {
public static void main(String[] args) {
Animal animal = new Cat();
animal.makeSound(); // Output: Meow
animal.sleep(); // Output: zzz
}
}
```
在上面的例子中,Animal是一个抽象类,其中包含了一个抽象方法makeSound()和一个非抽象方法sleep()。Cat是Animal的子类,必须实现makeSound()方法。在main()方法中,我们创建了一个Animal对象,但是它被赋值为一个Cat对象,因为Cat是Animal的子类,所以它可以被当作Animal类型来使用。最后输出了"Meow"和"zzz"。
阅读全文