我们可以在 Java 中定义没有抽象方法的抽象类吗?\

java 8object oriented programmingprogramming

没有主体的方法称为抽象方法。它仅包含带有分号的方法签名,前面有一个 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

相关文章