Java抽象类是用关键字abstract声明的类,它不能被实例化,只能被用作父类。抽象类可以包含抽象方法,这些方法没有具体的实现,必须在子类中被重写。抽象类可以包含普通的方法和变量,但是如果一个类包含抽象方法,那么这个类必须声明为抽象类。抽象类通常用于定义一些基本的方法,并为子类提供一个通用的接口,具体的实现由子类完成。