抽象类是在Java中用于定义接口的半实现的类。它必须被继承才能被使用,并要求子类实现其抽象方法。在Java中,我们使用 abstract
关键字来声明抽象类。
抽象类本身不能被实例化,需要通过子类来实现。抽象类中可以包含非抽象的方法,这些方法跟普通的类方法一样,同样需要实现。
接下来我们通过两个例子来详细讲解Java中的抽象类。
示例一:定义抽象类
public abstract class Animal {
public abstract void makeSound();
public void sleep() {
System.out.println("I am sleeping.");
}
}
上面的代码定义了一个抽象类 Animal
,其中包含了一个抽象方法 makeSound()
和一个非抽象方法 sleep()
。抽象方法 makeSound()
没有实现,需要在子类中实现。非抽象方法 sleep()
已经实现,可以被子类继承并使用。
示例二:实现抽象类
public class Dog extends Animal {
public void makeSound() {
System.out.println("Woof!");
}
}
上面的代码定义了一个子类 Dog
,继承了抽象类 Animal
。由于抽象类 Animal
中包含了一个抽象方法 makeSound()
,所以在子类 Dog
中需要实现这个方法,这里我们输出了一个狗叫的声音。另外,子类可以直接继承抽象类中的非抽象方法 sleep()
。
通过以上两个示例,我们可以看出抽象类是如何在Java中定义和实现的。它是一种用于定义接口的半实现类,需要通过子类来实现它的抽象方法。在实现抽象类的过程中我们可以继承其非抽象方法,从而减少代码的重复。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java中的抽象类是什么? - Python技术站