public class TVSet {
private String brand;
private double price;
public TVSet()
{
brand = "";
price = 0.0;
}
public String getbrand()
{
return this.brand;
}
public double getprice()
{
return this.price;
}
public void setbrand(String brand)
{
if(brand!=null)
{
this.brand = brand;
}
else
{
System.out.println("INVAILD VALUE");
}
}
public void setprice(double price)
{
if(price>=0)
{
this.price = price;
}
else
{
System.out.println("INVALID VALUE");
}
}
public void TVSet(String brand, double price)
{
if(brand!=null)
{
this.brand= brand;
}
else
{
System.out.println("INVALID VALUE");
}
if(price>=0.0)
{
this.price = price;
}
else
{
System.out.println("INVALID VALUE");
}
}
@Override
public String toString()
{
//double temp = this.getprice();
//DecimalFormat f = new DecimalFormat("##,00");
//String price2 = f.format(temp);
return String.format("%s, %.2f", brand, price);
}
@Override
public boolean equals(Object o)
{
if(o instanceof TVSet)
{
TVSet t =(TVSet)o;
if(price == t.price && brand == t.brand)
return true;
}
return false;
}
}
這是我的學校功課,叫我們寫一個類封裝電視機的概念,假設一臺電視機具有以下屬性:品牌(無效字符串,默認爲空)和價格(非負十進制數字,默認爲0)。請遵循命名約定來開發此類,包括 - 默認構造函數 - 構造函數,它將品牌和價格作爲參數 - 訪問器方法和增變器方法 - toString方法,返回由(1)品牌(2)逗號和(3)價格(四捨五入到小數點後第二位) - 等號方法 - 每當提供無效值時,都會打印一條錯誤消息「INVALID VALUE」到標準輸出流。 equals(Object o)的用法是什麼?的Java有什麼用等號(對象O)功能
默認的構造函數只在類沒有提供時才存在。如果它提供了任何構造函數,即使是沒有參數的構造函數,它也不是默認的構造函數。您沒有遵循方法「TVSet」的命名約定,也沒有遵循任何未覆蓋的方法。 –
顧名思義,如果兩個對象被認爲是相等的,它會返回「true」。 –
檢查一下。 https://docs.oracle.com/javase/7/docs/api/java/lang/Object.html – CodingNinja