能用抽象类去创建对象吗
时间: 2023-07-20 12:30:40 浏览: 102
Kotlin 创建接口或者抽象类的匿名对象实例
抽象类不能被实例化,也就是说不能直接用抽象类去创建对象。抽象类只是一个模板或者是一种规范,它的主要作用是为其子类提供一个公共的接口和一些通用的实现方法,子类通过继承抽象类,并实现其中的抽象方法,来完成具体的业务逻辑。
如果你要使用抽象类提供的接口和方法,必须先定义一个具体的子类,并实现其中的抽象方法,然后才能通过子类对象来访问这些方法。例如:
```java
abstract class Animal {
public abstract void move();
}
class Dog extends Animal {
public void move() {
System.out.println("狗跑...");
}
}
public class Test {
public static void main(String[] args) {
Animal animal = new Dog(); // 通过子类对象实例化抽象类
animal.move(); // 调用子类实现的方法
}
}
```
在这个例子中,`Animal`是一个抽象类,它定义了一个抽象方法`move()`,它的子类`Dog`继承了`Animal`,并实现了其中的`move()`方法。在`Test`类中,我们通过`Dog`对象实例化了`Animal`抽象类,并调用了`move()`方法。
阅读全文