[英]Compiler error using Java generics Interface with JavaFX Collection
[英]Java generics compiler error assigning to JavaFX collection
考慮以下代碼:
public interface ListDisplayObj {
public String getListDisplayString();
}
public class BusinessObject implements ListDisplayObj {
...
public String getListDisplayString() {
return "Example String";
}
}
public class DBUtilityClass {
public ObservableList<BusinessObject> getMyBusinessObjects() {
ObservableList<BusinessObject> toReturn =
FXCollections.observableArrayList();
// add some values to list
return toReturn;
}
}
public class JavaFXGuiController implements Initializable {
@FXML private ListView<ListDisplayObj> listItems;
@Override
public void initialize(URL url, ResourceBundle rb)
{
ObservableList<ListDisplayObj> objsForList =
DBUtilityClass.getMyBusinessObjects();
listItems.setItems(objsForList);
...
}
}
在初始化分配()被生成一個“不兼容的類型的”的返回類型之間編譯錯誤getMyBusinessObjects()
函數和objsForList
類型。
我究竟做錯了什么?
setItems需要一個確切類型的列表(ObservableList而不是ObservableList),而您的列表是接口的實現。 將listItems定義為ListView。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.