Abstract抽象:先说抽象方法,抽象方法不像普通方法一样,它没有方法体{}、并且要使用abstart关键字修饰、而且抽象方法只能写在抽象类中;
e.g. public void student(){...} //普通方法
public abstart void student(); //抽象方法
再说说抽象类,抽象类一般作为父类,在继承一个抽象父类时必须要重写父类的抽象方法(子类也是抽象类时不用重写)
抽象方法中可以有构造方法、成员变量
Interface接口:Interface接口更像是一个“纯粹”的抽象方法,在接口中的抽象方法可以不加abstract
,但接口中不存在普通方法,不过从JDK1.8开始,接口中允许定义一种默认方法(带有方法体的方法)e.g. public default void student(){...},这相当于“接口中的普通方法”;
接口中不可以有构造方发;
接口中的成员“变量”有所不同,不是变量而是常量,必须负责且在接口中用public作为修饰符