Java抽象类和接口中可以有成员变量吗?

public class AbstractTest {
    public static void main(String[] args) {
        CC cc = new CC();
        System.out.println(cc.b);
        System.out.println(cc.getA());
    }
}

 abstract class AA {
     //抽象类可以有成员变量(可以是私有的),成员方法可以有方法体
    private int a = 99;
    public int getA(){
        return a;
    }
}
interface BB{
    //接口中也可以定义成员变量(必须是public的),方法不能有方法体
    public int b = 88;
    public int getB();
}

//实现类
class CC extends AA implements BB {
    public int getB(){
        return 0;
    }
}

Java8支持接口中有default方法

interface BB{
    //接口中也可以定义成员变量,方法不能有方法体
    public int b = 88;
    public int getB();
    default void d(){

    }
}

 

你可能感兴趣的:(Java)