[英]Java - Superclass/Subclass
這里有個小問題:
public class Item extends ItemManufacturer
{
// Attributes
private String itemcode;
private String itemname;
private String description;
private String style;
private String finish;
private float unitprice;
private float stock;
public void item(String suppliercodeIn, String suppliernameIn, String addressIn, String itemcodeIn, String itemnameIn, String descriptionIn,
String styleIn, String finishIn, float unitpriceIn, float stockIn)
{
super ( suppliercodeIn, suppliernameIn, addressIn );
itemcode = itemcodeIn;
itemname = itemnameIn;
description = descriptionIn;
style = styleIn;
finish = finishIn;
unitprice = unitpriceIn;
stock = stockIn;
}
我收到以下錯誤消息:
調用super必須是構造函數中的第一條語句。
有人願意幫助我嗎?
在上課之后,我得到了另一個錯誤。
// Create a Item oject
Item item = new Item();
我正在使用一個名為items的數據庫和一個item的表名。
這就是問題:
public void item(...)
那不是Item
類的構造函數-這是一個稱為item
的void方法。 它應該是:
public Item(...)
請注意,Java區分大小寫,並且構造函數沒有聲明的返回類型。 它只是可訪問性,后跟類名,然后是參數列表。
我懷疑有錯字。 您的構造函數應稱為Item
而不是item
。 (構造函數不返回任何內容,甚至不返回void
。)
至於new
表達式:創建Item
的新實例時,您需要傳遞所有這些參數。
Item item = new Item("234SD23", "SuperSupplier", "21 SO Drive", ...);
讀這個,
如果沒有錯字,而item是一種方法,那么super()將無法工作。 您需要做super.item();
如果有拼寫錯誤,而其Item不是item,那么將沒有返回類型,
例如:
public Item (String suppliercodeIn, String suppliernameIn, String addressIn, String itemcodeIn, String itemnameIn, String descriptionIn, String styleIn, String finishIn, float unitpriceIn, float stockIn){ }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.