抽象类
包含抽象方法的类即抽象类,抽象类也可以包含非抽象方法和数据字段。
public abstract class AbstractTest {
public abstract void print();
public void show(){
System.out.print("print abstract class");
}
}
class AbstractSonClass extends AbstractTest{
@Override
public void print() {
// TODO Auto-generated method stub
}
public void show(){
System.out.print("print abstract class");
}
}
子类需要实现继承的抽象类中的抽象方法,否则子类也是一个抽象类。
接口
接口只包含未实现方法。类可以继承多个接口。
public class InterfaceTest implements PrintTest,ShowTest{
@Override
public void show() {
// TODO Auto-generated method stub
System.out.println("show interface");
}
@Override
public void print() {
// TODO Auto-generated method stub
System.out.println("print interface");
}
public static void main(String []args){
//InterfaceTest inter=new InterfaceTest();
PrintTest test=new InterfaceTest();
test.print();
}
}
interface PrintTest{
public void print();
}
interface ShowTest{
public void show();
}
创建对象的引用时,建议优先使用接口。