一个abstract
方法属于abstract
类,并且它没有主体。主体由子类提供:
// Code from filename: Main.java
// abstract class
abstract class Main {
public String fname = "John";
public int age = 24;
public abstract void study(); // abstract method
}
// Subclass (inherit from Main)
class Student extends Main {
public int graduationYear = 2018;
public void study() { // the body of the abstract method is provided here
System.out.println("Studying all day long");
}
}
// End code from filename: Main.java
// Code from filename: Second.java
class Second {
public static void main(String[] args) {
// create an object of the Student class (which inherits attributes and methods from Main)
Student myObj = new Student();
System.out.println("Name: " + myObj.fname);
System.out.println("Age: " + myObj.age);
System.out.println("Graduation Year: " + myObj.graduationYear);
myObj.study(); // call abstract method
}
}
这个abstract
关键字是非访问修饰符,用于类和方法。
类:抽象类是受限制的类,不能用于创建对象(要访问它,必须从另一个类继承)。
方法:抽象方法只能在抽象类中使用,并且没有方法体。主体由子类提供(继承自)。
在我们的中阅读有关修饰符的更多信息Java 修饰符教程。
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!