gpt4 book ai didi

Java - 接口(interface),实例化一个接口(interface)?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:41:35 25 4
gpt4 key购买 nike

所以我刚才在网上找到了这个代码示例,我又重新看了一遍,但很困惑。

通过观察,我收集到的(可能是错误的)是它将一个 Printer 对象传递给 NumberPrinter 类中的 print 方法。但是这个接口(interface)也叫Printer,那我们不是实例化一个Printer接口(interface)的匿名类,定义方法然后传递给它吗?

我的基本问题是,我最初的假设是否正确?如果是这样,我认为您无法实例化接口(interface)?

public class NumberPrinter {

public interface Printer {
public void print (int idx);
}

public static void print (Printer p) {
for (int i = 0; i < 4; i++) {
p.print(i);
}
}

public static void main(String[] args) {
print(new Printer() {

@Override
public void print(int idx) {
System.out.println(idx);
}

});
}

}

最佳答案

这称为匿名内部类

它创建了一个未命名的类来实现 Printer 接口(interface)。

关于Java - 接口(interface),实例化一个接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10201081/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com