Java 中可以定义没有抽象方法的抽象类吗?
没有方法体的方法称为**抽象**方法。它只包含方法签名和分号,以及其前面的 abstract 关键字。
public abstract myMethod();
要使用抽象方法,需要通过扩展其类来继承它,并为其提供实现。
抽象类
包含 0 个或多个抽象方法的类称为抽象类。如果它包含至少一个抽象方法,则必须将其声明为抽象类。
是的,您可以在其中不定义抽象方法的情况下声明**抽象**类。一旦您将类声明为**抽象**,就表示该类不完整,并且您不能实例化它。
因此,如果您想阻止直接实例化类,可以将其声明为抽象类。
如果您想在抽象类中使用具体方法,则需要继承该类,为抽象方法(如果有)提供实现,然后使用子类对象调用所需的方法。
示例
在以下 Java 示例中,抽象类 MyClass 包含一个名为 display 的具体方法。
从另一个类(AbstractClassExample)中,我们继承了类 MyClass 并使用子类对象调用其具体方法 display。
abstract class MyClass {
public void display() {
System.out.println("This is a method of abstract class");
}
}
public class AbstractClassExample extends MyClass{
public static void main(String args[]) {
new AbstractClassExample().display();
}
}输出
This is a method of abstract class
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP