實驗六:類的封裝
源代碼為:
package 實驗六;
import java.time.LocalDate;
import java.util.Scanner;
public class Account{
String zhanghao,chuhuxingming,shenfenzhenghaoma;
double cunkuanyue=0,cunjin=0,quchu=0;
int year=0,month=0,day=0;
Scanner shuru=new Scanner(System.in);
void set(){
System.out.println("請依次輸入賬號、儲戶姓名、開戶時間、身份證號碼、存款余額:");
chuhuxingming=shuru.next();
year=shuru.nextInt();
month=shuru.nextInt();
day=shuru.nextInt();
shenfenzhenghaoma=shuru.next();
cunkuanyue=shuru.nextDouble();
}
public void Cunkuan() {
System.out.println("請輸入要存入多少錢:");
cunjin=shuru.nextDouble();
cunkuanyue=cunkuanyue+cunjin;
public void Qukuan() {
System.out.println("請輸入要取出多少錢:");
quchu=shuru.nextDouble();
cunkuanyue=cunkuanyue-quchu;
}
public void Chaxun() {
System.out.println("賬號:"+zhanghao+"\n儲戶姓名:"+chuhuxingming+"\n開戶時間:"+year+"-"+month+"-"+day+"\n身份證號碼:"+shenfenzhenghaoma+"\n存款余額:"+cunkuanyue);
}
public void finalize() {}
public static void main(String[] args) {
Account yonghu=new Account();
yonghu.set();
Scanner shuru=new Scanner(System.in);
int i=1;
while(i!=0) {
System.out.print("1 存款 2 取款 3 查詢 0 退出 ");
i=shuru.nextInt();
switch(i) {
case 1:yonghu.Cunkuan();break;
case 2:yonghu.Qukuan();break;
case 3:yonghu.Chaxun();break;
default:System.out.println("\n謝謝使用");break;
}
}
yonghu.finalize();
}
}
輸出結果為:
請依次輸入賬號、儲戶姓名、開戶時間、身份證號碼、存款余額:
2 李會通 2018 12 24 123456789123456789 2000
1 存款 2 取款 3 查詢 0 退出 1
請輸入要存入多少錢:
3000
1 存款 2 取款 3 查詢 0 退出 2
請輸入要取出多少錢:
50
1 存款 2 取款 3 查詢 0 退出 3
賬號:2
儲戶姓名:李會通
開戶時間:2018-12-24
身份證號碼:123456789123456789
存款余額:4500.0
1 存款 2 取款 3 查詢 0 退出 0
謝謝使用
總結心得:因為我使用的都是public,封裝性不是特別好,再者書上要求的銷戶操作不太明白,所以我只用了析構方法。
實驗六:類的封裝