Java接口

1.适配接口:接口可以允许同一个接口有多个不同的实现。接口的实现和向该方法传递的对象取决于方法的使用者。Scanner的构造方法接受的是一个Readable接口,Readable接口没有任何方法的参数,它是单独为类Scanner创建的。Readable接口只要求实现read()方法,在方法read()内部,将输入内容添加到CharBuffer参数中,没有任何输入时返回-1。

class A4 {
    public void a() {
        System.out.println("a()");
    }
}

interface B4 {
    void b();
}

class C4 implements B4 {
    public void b() {
        System.out.println("b()");
    }
}

class D4 extends A4 implements B4 {
    public void b() {
        super.a();
    }
}

public class Test17 {
    public static void main(String[] args) {
        B4 adapter = new D4();
        adapter.b();
    }
}

2.接口中的域:接口中的任何域都自动是static和final,接口就可以用来创建常量。Java中标识具有常量初始值的static final时,都会使用大写字母来表示。接口中的域自动是public。域是static,在第一次加载类的时候就初始化了。

interface A5 {
    Random RANDOM = new Random(47);
    int RANDOM_INT = RANDOM.nextInt(10);
    long RANDOM_LONG = RANDOM.nextLong() * 10;
    float RANDOM_FLOAT = RANDOM.nextFloat() * 10;
    double RANDOM_DOUBLE = RANDOM.nextDouble() * 10;
}

public class Test18 {
    public static void main(String[] args) {
        System.out.println(A5.RANDOM_INT);
        System.out.println(A5.RANDOM_LONG);
        System.out.println(A5.RANDOM_FLOAT);
        System.out.println(A5.RANDOM_DOUBLE);
    }
}

3.嵌套接口:接口可以嵌套在类或者其他接口中;嵌套接口在接口中声明,必须是public修饰符,在类中声明,可以是任何访问修饰符;嵌套接口被隐式声明为static静态。

public interface Test19 {
    void a();

    interface A{
        void b();
    }
}
class B implements Test19.A{
    @Override
    public void b() {
        System.out.println("b()");
    }


    public static void main(String[] args) {
        Test19.A t = new B();
        t.b();
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值