1.使用類別時,禁止直接存取該類別變數,而必須透過該類別
方法,來間接使用這些變數,以提高類別的獨立性和安全行
sample087 建立不能從類別外部存取的成員
1.在程式1中,main方法中使用private變數,所以編譯時會發生錯誤
程式
class airplane {
private double fuel;
private String iro;
void dataset(double num,String str) {
fuel = num;
iro = str;
}
}
public class sample087 {
public static void main(String[] args) {
airplane plane = new airplane();
plane.dataset(100,"紅");
}
}
2.宣告getfuel和gettiro方法來存取private成員
程式
class airplane {
private double fuel;
private String iro;
void dataset(double num,String str) {
fuel = num;
iro = str;
}
double getfuel() {
return fuel;
}
String getiro() {
return iro;
}
}
public class sample087_2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
airplane plane = new airplane();
plane.dataset(100, "紅");
double num = plane.getfuel();
System.out.println("飛機的燃料有" + num);
String str = plane.getiro();
System.out.println("飛機的顏色是"+ str +"色");
}
}
sample088 建立可以從類別外部存取的成員
1.前面加上public
程式
class airplane {
private double fuel;
private String iro;
void dataset(double num,String str) {
fuel = num;
iro = str;
}
public double getfuel() {
return fuel;
}
public String getiro() {
return iro;
}
}
public class sample088 {
public static void main(String[] args) {
// TODO Auto-generated method stub
airplane plane = new airplane();
plane.dataset(100, "紅");
double num = plane.getfuel();
System.out.println("飛機的燃料有" + num);
String str = plane.getiro();
System.out.println("飛機的顏色是"+ str +"色");
}
}
sample089 多載方法