java抽象类
什么是java抽象类?java抽象类的应用?
用abstract
修饰的类为抽象类
java抽象类是为了实现多态,其定义的字段field无法被实例化,方法method无具体的方法体, 只是方便子类去重写override
子类必须继承父类中抽象的方法,否则编译器会报错。
//用抽象类引用具体子类的对象,这样就避免了具体子类类型的引用
abstract class Person{
abstract void run();
}
class Student extends Person{
@override
public void run(){
System.out.println("student run");
}
}
Person s= new Student;
s.run.
java接口
接口是100%抽象的类,没有字段,只有抽象的方法。接口用interface
标识
接口的实现用implements
,接口可以多继承
//接口
interface Person{
public abstract void run(); //public abstract 可以省去
public abstract getName();
}
//接口可以多继承
Student implements Person, Hello{
...
}
接口可以定义default方法,子类不必重写default方法