实验六:类的封装
Posted java-17
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验六:类的封装相关的知识,希望对你有一定的参考价值。
一.实验程序如下
package fengzhuang;
import java.util.*;
public class Account {
public int Zhanghu;
public String Name;
public String Opentime;
public int Idcard;
public int Money;
public int Secret;
import java.util.*;
public class Account {
public int Zhanghu;
public String Name;
public String Opentime;
public int Idcard;
public int Money;
public int Secret;
public Account(int Zhanghu, String Name,String Opentime,int Idcard, int Money,int Secret) {
this.Zhanghu = Zhanghu;
this.Name = Name;
this.Opentime = Opentime;
this.Idcard=Idcard;
this.Money = Money;
this.Secret=Secret;
}
public void kaihu(){
Scanner b=new Scanner(System.in);
System.out.println("请输入你的姓名:");
Name=b.next();
System.out.println("请输入你的身份账号:");
Idcard=b.nextInt();
System.out.println("请输入你的密码:");
Secret=b.nextInt();
System.out.println("用户开通账户成功! 你的账户为"+Zhanghu);
}
//销户
public void xiaohu(){
Zhanghu=0;
Name="null";
Opentime="null";
Idcard=0;
Money=0;
Secret=0;
System.out.println("用户销户成功!");
}
this.Zhanghu = Zhanghu;
this.Name = Name;
this.Opentime = Opentime;
this.Idcard=Idcard;
this.Money = Money;
this.Secret=Secret;
}
public void kaihu(){
Scanner b=new Scanner(System.in);
System.out.println("请输入你的姓名:");
Name=b.next();
System.out.println("请输入你的身份账号:");
Idcard=b.nextInt();
System.out.println("请输入你的密码:");
Secret=b.nextInt();
System.out.println("用户开通账户成功! 你的账户为"+Zhanghu);
}
//销户
public void xiaohu(){
Zhanghu=0;
Name="null";
Opentime="null";
Idcard=0;
Money=0;
Secret=0;
System.out.println("用户销户成功!");
}
public void Savemoney(){
while(true){
Scanner b=new Scanner(System.in);
System.out.println("请输入你的密码!");
int pass=b.nextInt();
if(pass==Secret){
System.out.println("请确认存钱的金额:");
int money=b.nextInt();
Money=Money+money;
break;
}else{
System.out.println("你输入的密码有错误,请重新进行操作;");
}
}
}
while(true){
Scanner b=new Scanner(System.in);
System.out.println("请输入你的密码!");
int pass=b.nextInt();
if(pass==Secret){
System.out.println("请确认存钱的金额:");
int money=b.nextInt();
Money=Money+money;
break;
}else{
System.out.println("你输入的密码有错误,请重新进行操作;");
}
}
}
public void Takemoney (){
System.out.println("请输入需要取款的金额");
Scanner b=new Scanner(System.in);
int takemoney=b.nextInt();
if(takemoney<=Money){
Money=Money-takemoney;
}else{
System.out.println("当前余额不足");
}
}
System.out.println("请输入需要取款的金额");
Scanner b=new Scanner(System.in);
int takemoney=b.nextInt();
if(takemoney<=Money){
Money=Money-takemoney;
}else{
System.out.println("当前余额不足");
}
}
public void Check(){
System.out.println("您的余额为"+Money);
}
//查询基本信息是在输入密码,密码正确的情况下才显示相应的信息
public void show(){
System.out.println("账户:"+Zhanghu);
System.out.println("姓名:"+Name);
}
public static void main(String[] args){
Scanner b=new Scanner(System.in);
Account a=new Account(20011,"张三","2005/12/3",00001,20000,123456789);
System.out.println("开通银行账户!");
System.out.println("****请输入你要执行的操作:*****");
System.out.println("****1-开户******");
System.out.println("*****2-查阅账号信息******");
System.out.println("*****3-存款******");
System.out.println("*****4-取款******");
System.out.println("*****5-查询余额******");
System.out.println("****6-销户******");
System.out.println("您的余额为"+Money);
}
//查询基本信息是在输入密码,密码正确的情况下才显示相应的信息
public void show(){
System.out.println("账户:"+Zhanghu);
System.out.println("姓名:"+Name);
}
public static void main(String[] args){
Scanner b=new Scanner(System.in);
Account a=new Account(20011,"张三","2005/12/3",00001,20000,123456789);
System.out.println("开通银行账户!");
System.out.println("****请输入你要执行的操作:*****");
System.out.println("****1-开户******");
System.out.println("*****2-查阅账号信息******");
System.out.println("*****3-存款******");
System.out.println("*****4-取款******");
System.out.println("*****5-查询余额******");
System.out.println("****6-销户******");
while(true)
{
int x=b.nextInt();
if(x==1||x==2||x==3||x==4||x==5||x==6||x==7){
switch(x){
case 1:
System.out.println("****开通账户*****");
a.kaihu();
break;
case 2:
System.out.println("****账号信息为*****");
a.show();
break;
case 3:
System.out.println("****进行存款****");
a.Savemoney();
break;
case 4:
System.out.println("进行取款*");
a.Takemoney();
break;
case 5:
a.Check();
break;
case 6:
a.xiaohu();
break;
case 7:
System.exit(0);
break;
}
}
else{
break;
}
}
}
}
{
int x=b.nextInt();
if(x==1||x==2||x==3||x==4||x==5||x==6||x==7){
switch(x){
case 1:
System.out.println("****开通账户*****");
a.kaihu();
break;
case 2:
System.out.println("****账号信息为*****");
a.show();
break;
case 3:
System.out.println("****进行存款****");
a.Savemoney();
break;
case 4:
System.out.println("进行取款*");
a.Takemoney();
break;
case 5:
a.Check();
break;
case 6:
a.xiaohu();
break;
case 7:
System.exit(0);
break;
}
}
else{
break;
}
}
}
}
二.实验运行结果
开通银行账户!
****请输入你要执行的操作:*****
****1-开户******
*****2-查阅账号信息******
*****3-存款******
*****4-取款******
*****5-查询余额******
****6-销户******
****请输入你要执行的操作:*****
****1-开户******
*****2-查阅账号信息******
*****3-存款******
*****4-取款******
*****5-查询余额******
****6-销户******
1
****开通账户*****
请输入你的姓名:
****开通账户*****
请输入你的姓名:
毛伟明
请输入你的身份账号:
请输入你的身份账号:
00000000
请输入你的密码:
请输入你的密码:
123456789
用户开通账户成功!
你的账户为20011
用户开通账户成功!
你的账户为20011
2
****账号信息为*****
账户:20011
姓名:毛伟明
****账号信息为*****
账户:20011
姓名:毛伟明
3
****进行存款****
请输入你的密码!
****进行存款****
请输入你的密码!
123456789
请确认存钱的金额:
请确认存钱的金额:
20000
4
进行取款*
请输入需要取款的金额
进行取款*
请输入需要取款的金额
5400
5
您的余额为34600
5
您的余额为34600
6
用户销户成功!
用户销户成功!
三.实验心得
1.此次实验中和c++程序差不多,同样是利用构造函数定义对象中的一组属性,实现变量的定义。
2.通过实验明白了对象是如何引用的,还有如何进行比较运算的等等。
以上是关于实验六:类的封装的主要内容,如果未能解决你的问题,请参考以下文章