抽象类不能实例化,也就是不能用new来实例化。用代码来解释这段话
时间: 2024-03-17 22:47:45 浏览: 69
无法实例化抽象类
好的,下面是一个抽象类和一个继承自该抽象类的子类的示例代码,来演示抽象类不能实例化的特点:
```
abstract class Animal {
public abstract void makeSound();
}
class Dog extends Animal {
public void makeSound() {
System.out.println("汪汪汪");
}
}
public class Main {
public static void main(String[] args) {
Animal myAnimal = new Animal(); // 会报错,无法实例化抽象类Animal
Dog myDog = new Dog(); // 正确,可以实例化Dog类
myDog.makeSound(); // 输出 "汪汪汪"
}
}
```
在上面的代码中,我们定义了一个抽象类Animal,其中包含一个抽象方法makeSound(),它没有具体的实现。然后我们定义了一个继承自Animal的子类Dog,它必须实现makeSound()方法。
在Main类的main()方法中,我们尝试实例化Animal类,但会发现编译器报错,因为抽象类不能实例化。但是我们可以实例化Dog类,并调用其中的makeSound()方法,输出为"汪汪汪"。
阅读全文