举例抽象类使用java
时间: 2023-10-31 20:57:58 浏览: 48
抽象类是用来表示一种概念或者通用行为的类,不能被实例化。它可以包含抽象方法和具体方法。下面是一个使用Java的抽象类的示例:
```java
abstract class Animal {
private String name;
public Animal(String name) {
this.name = name;
}
public String getName() {
return name;
}
// 抽象方法,子类必须实现
public abstract void makeSound();
// 具体方法,子类可以选择性重写
public void sleep() {
System.out.println("Zzz");
}
}
class Dog extends Animal {
public Dog(String name) {
super(name);
}
// 实现抽象方法
public void makeSound() {
System.out.println("Woof");
}
}
class Cat extends Animal {
public Cat(String name) {
super(name);
}
// 实现抽象方法
public void makeSound() {
System.out.println("Meow");
}
}
public class Main {
public static void main(String[] args) {
Animal dog = new Dog("Fido");
dog.makeSound(); // 输出: Woof
dog.sleep(); // 输出: Zzz
Animal cat = new Cat("Whiskers");
cat.makeSound(); // 输出: Meow
cat.sleep(); // 输出: Zzz
}
}
```
在这个示例中,`Animal` 是一个抽象类,其中包含一个抽象方法 `makeSound()` 和一个具体方法 `sleep()`。`Dog` 和 `Cat` 是继承自 `Animal` 的具体子类,它们必须实现父类的抽象方法。在 `Main` 类中,我们可以创建 `Dog` 和 `Cat` 的实例,并调用它们的方法。