我有一個簡單的問題 - 創建一個重量超過0,小於500和名稱的Dog對象。但是,我在如何忽略無效的輸入時打印出了有效的其他所有內容。這是到目前爲止我的代碼:如何在創建新對象時忽略輸入無效?
//Dog dogFail = new Dog("Grimes", 501); is suppposed to be ignored
public class Dog{
private String name;
private double weight;
public Dog(String myName, double myWeight){
if(myWeight > 0 && myWeight<500){
name = myName;
weight = myWeight;
}
else{
throw new IllegalArgumentException("Your dog must weigh between 0 and 500 pounds");
}
}
public String toString(){
return "This dog is named " + name + " and weighs " + weight + " pounds";
}
什麼是去了解它的最好方法?
爲什麼你想讓別人創建一個無效的對象?無效的對象是有毒的,在構造函數中拋出異常是要走的路。 –
那麼如果你說體重是-5,狗應該有多重? – immibis