在Java开发中,普通类和抽象类有以下区别: 1. 抽象类不能被实例化,而普通类可以被实例化。 2. 抽象类可以包含抽象方法,而普通类不能包含抽象方法。抽象方法是没有方法体的方法,只有方法头。 3. 抽象类可以包含非抽象方法,而普通类必须包含至少一个非抽象方法。 4. 如果一个类包含抽象方法,那么这个类必须被声明为抽象类。 5. 抽象类可以被继承,而普通类也可以被继承。如果一个类继承了一个抽象类,那么这个类必须实现抽象类中的所有抽象方法。 6. 抽象类可以包含静态方法和静态变量,而普通类也可以包含静态方法和静态变量。 7. 抽象类不能被声明为final,而普通类可以被声明为final。 8. 抽象类可以包含构造方法,而普通类也可以包含构造方法。 9. 抽象类可以包含包访问权限,而普通类也可以包含包访问权限。 10. 抽象类可以包含默认访问权限,而普通类也可以包含默认访问权限。 11. 抽象类可以包含protected访问权限,而普通类也可以包含protected访问权限。 12. 抽象类可以包含public访问权限,而普通类也可以包含public访问权限。 [2023-11-07 22:14:58 | AI小红书种草文 | 294点数解答]