/* 抽象类:无法实例化,只能被其他类继承。内部允许编写抽象方法。 抽象方法:本身并无具体内容,必须被子类重写的方法。 */ public class AbstractTest1 { public static void main(String[] args) { } } abstract class Animal{ public abstract void eat(); } class Cat extends Animal{ @Override public void eat() { System.out.println("猫吃鱼..."); } } class Dog extends Animal{ @Override public void eat() { System.out.println("狗吃肉..."); } }
/* 抽象类的注意事项: 1.抽象类不能实例化 2.抽象类存在构造方法 3.抽象类中可以存在普通方法 4.抽象类的子类 (1)要么重写抽象类中的所有抽象方法 (2)要么是抽象类 */ public class AbstractTest { public static void main(String[] args) { } } abstract class Fu{ public Fu(){ } public abstract void show(); public void method(){ System.out.println("..."); } } class Zi extends Fu{ public Zi() { super(); } @Override public void show() { } } abstract class Zi2 extends Fu{ } //abstract修饰符与final、private、static修饰符冲突,不能同时使用。