我正在製作JavaFX應用程序以跟蹤公司庫存。用戶可以添加/刪除/修改零件和產品。JavaFX將抽象類對象添加到arraylist
的零件和產品類有屬性和getter和setter方法,但是部分是一個抽象類 -
Product Part<Abstract>
id id
name name
price price
min min
max max
get/set get/set
我有3周的ArrayList中顯示的一個實現代碼如下 -
private ObservableList<Part> allParts = FXCollections.observableArrayList();
private ObservableList<Product> products = FXCollections.observableArrayList();
private ObservableList<Part> associatedParts = FXCollections.observableArrayList();
如何Part是否爲抽象類並且無法實例化時,是否可以將新零件添加到allParts和associatedParts陣列列表?
如何將某些零件與某些產品關聯?每個產品必須始終有一個或多個關聯的零件。
你可以在列表中放入Part的任何子類型。如果'Foo' _is是'Part'的子類型,那麼如果一個實例_是a_'Foo',它就是''Part''。這是繼承的心臟和靈魂。參見Liskov替代原則。 –
Java抽象清單可能是一個很好的例子。例如:'列表 list = new ArrayList();''和'列表 list2 = new LinkedList();' –
Sedrick