-3
考慮下面的代碼:奇怪鑄造相關的問題在Java中
public class ListDemo {
List<Inner> inners;
public ListDemo() {
this.inners = new ArrayList<>();
}
private void load(){
SomeClzz.load(inners);
}
private class Inner implements TestInterface {
@Override
public void bla() {
System.out.println("Bla");
}
}
}
與接口:
public interface TestInterface {
public void bla();
}
和類:
public class SomeClzz {
public static void load(List<TestInterface> test){
for (TestInterface testInterface : test) {
testInterface.bla();
}
}
}
我創造了這個假的代碼基礎上一個真實世界的例子,因爲我想看看我是否可以找出問題並發現load方法有錯誤。
爲什麼SomeClzz.load(inners);
給出了一個錯誤:內部函數不能從List<Inner>
轉換爲List<TestInterface>
?
它給了什麼錯誤? – nickb
@nickb我編輯了問題以指定錯誤 –