封裝的優點
封裝優點:①隱藏細節,關閉實現細節②對屬性進行有效的驗證③控制屬性的讀寫權限④類內部可以自由修改⑤減少耦合
封裝是實現屬性封裝使用private 關鍵字和set/get方法實現封裝
package Goods;
/**
* 商品類包含商品的屬性:名稱,價格
* @author Administrator
*
*/
public class Goods {
private String name;
private double price;
/**
* 封裝屬性name,提供使用name屬性的訪問器
* @return,返回name屬性
*/
public String getName() {
return name;
}
/**
* 封裝屬性name,提供修改name的修改域,並對數據進行驗證
* @param name
*/
public void setName(String name) {
try{
/*對數據進行驗證*/
if(name != null){
this.name = name;
}else{
throw new NullPointerException();
}
}catch(NullPointerException e){
e.printStackTrace();
}
}
/**
* 封裝屬性price,提供訪問器
* @return
*/
public double getPrice() {
return price;
}
/**
* 封裝屬性price,提供域修改器,並對數據進行驗證
* @param price
*/
public void setPrice(double price) {
try{
if(price != 0){
this.price = price;
}else{
throw new NullPointerException();
}
}catch(NullPointerException e){
e.printStackTrace();
}
}
}