「java实现银行业务类」java写银行系统

博主:adminadmin 2023-03-19 18:21:09 402

今天给各位分享java实现银行业务类的知识,其中也会对java写银行系统进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

JAVA高手来,题目是:自定义异常类,实现银行的存钱和取钱业务

3个类,开始...

1,

/**

*

* 自定义异常类

*

*/

public class MyException extends Exception {

//验证交易类型正确性

public void TransactionsInfo(){

System.out.println("交易失败,只能输入0或者1");

}

//验证金额正确性

public void amountInfo(){

System.out.println("交易失败,输入金额不能为负数或者字符");

}

}

2,

public class User {

/**

* 用户信息类

*/

private String name; //用户名

private float amount; //用户金额

public User(String name,float amount){

this.name = name;

this.amount = amount;

}

public float getAmount() {

return amount;

}

public void setAmount(float amount) {

this.amount = amount;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

// 交易的方法,需要接受两个参数,一个是代表交易方式(取款,或者存款,),一个代表交易金额

public User Transactions() throws MyException{

System.out.println("请输入您的交易方式.0代表存款,1代表取款");//提示用户交易方式

BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));

BufferedReader br2=new BufferedReader(new InputStreamReader(System.in));

String flag = null;

try {

flag = br1.readLine();

} catch (IOException e) {

e.printStackTrace();

}

if("0".equals(flag)){

}else if("1".equals(flag)){

amount=-amount;//因为1代表取款,所以变成负数

}else{

new MyException().TransactionsInfo(); //打印类型错误

return this;

}

String amountString = null;

try {

amountString = br2.readLine();

} catch (IOException e) {

e.printStackTrace();

}

float amount = 0.0f;

try{

amount = Float.parseFloat(amountString);

}catch(Exception ex){

throw new MyException();

}

this.amount = this.amount+amount;//交易

return this; //返回用户信息

}

}

3,

public class MoneyTest {

/**

* 测试类

* @param args

*/

public static void main(String[] args){

User user = new User("张三",123.4f); //测试用户

System.out.println("用户"+user.getName()+"交易前的金额为:"+user.getAmount());

try {

user.Transactions();

} catch (MyException e) {

// TODO Auto-generated catch block

e.amountInfo();

}//调用方法

System.out.println("交易后的金额为"+user.getAmount());

}

}

用Java编写银行账户存取款业务,急求!!

public class Account {

protected String accId;

protected String name;

protected double money;

public Account (String accId,String name){

this(accId,name,0);

}

public Account (String accId,String name,double money){

this.accId = accId;

this.name = name;

this.money = money;

}

public void saveMoney(double money){

if(money = 0){

System.out.println("存款金额必须大于0");

}

this.money += money;

System.out.println("存款成功");

}

public double getMoney(double money){

if(money = 0){

System.out.println("取款金额必须大于0");

return 0;

}

if(this.money = money){

System.out.println("余额不足,无法取款");

return 0;

}

this.money -= money;

System.out.println("取款成功");

return money;

}

public double getBalance(){

return this.money;

}

protected double getOverdraft(){

return 0;

}

// 实现了equals方法,list比较时才能正确

@Override

public boolean equals(Object obj) {

if(obj == null){

return false;

}

if(this == obj){

return true;

}

if(obj instanceof Account){

return this.accId.equals(((Account)obj).accId);

}

return false;

}

@Override

public String toString() {

return "账户=" + accId + ",名字=" + name + ",余额=" + money;

}

}

public class Bank {

// Account实现了equals方法,list查找时才能正确

private ListAccount usersAccounts;

public Bank() {

usersAccounts = new ArrayListAccount();

}

public void addAccount(Account account) {

if (usersAccounts.contains(account)) {

System.out.println("添加失败,不能添加同样的账户");

return;

}

usersAccounts.add(account);

}

public boolean delAccount(Account account) {

return usersAccounts.remove(account);

}

public boolean delAccount(String accId) {

return delAccount(new Account(accId, null));

}

public boolean existAccount(Account account) {

return usersAccounts.contains(account);

}

public boolean existAccount(String accId) {

return existAccount(new Account(accId, null));

}

public Account getAccount(String accId){

return usersAccounts.get(usersAccounts.indexOf(new Account(accId, null)));

}

public double getAllMoney() {

// 不考虑是否溢出,只是把所有用户余额相加

double result = 0;

for (Account account : usersAccounts) {

result += account.getBalance();

}

return result;

}

public double getAllOverdraft() {

// 不考虑是否溢出

double result = 0;

for (Account account : usersAccounts) {

result += account.getOverdraft();

}

return result;

}

public int getAccountNum() {

return usersAccounts.size();

}

public int getCreditAccountNum() {

int num = 0;

for (Account account : usersAccounts) {

// instanceof 性能没有简单的方法快。

if (account instanceof CreditAccount) {

num++;

}

}

return num;

}

public int getSavingAccountNum() {

int num = 0;

for (Account account : usersAccounts) {

if (account instanceof SavingAccount) {

num++;

}

}

return num;

}

public ListAccount getAllAccount() {

return usersAccounts;

}

}

public class CreditAccount extends Account{

private double overdraft;

public CreditAccount(String accId,String name){

super(accId, name);

this.overdraft = 1000;

}

public CreditAccount(String accId,String name,double money){

this(accId, name,money,1000);

}

public CreditAccount(String accId,String name,double money,double overdraft){

super(accId, name,money);

this.overdraft = overdraft;

}

@Override

public double getMoney(double money) {

if(money = 0){

System.out.println("取款金额必须大于0");

return 0;

}

if(this.money + overdraft = money){

System.out.println("余额不足,无法取款");

return 0;

}

this.money -= money;

System.out.println("取款成功");

return money;

}

@Override

public double getOverdraft(){

return overdraft;

}

@Override

public String toString() {

return "账户=" + accId + ",名字=" + name + ",余额=" + money + ",透支=" + overdraft;

}

}

public class SavingAccount extends Account {

public SavingAccount(String accId, String name) {

super(accId, name);

}

public SavingAccount(String accId, String name, double money) {

super(accId, name, money);

}

@Override

public double getMoney(double money) {

return super.getMoney(money);

}

@Override

public double getOverdraft() {

return super.getOverdraft();

}

}

public class Test {

private static Bank bank = new Bank();

public static void main(String[] args) {

Test.genAccount();

// 开户

Account a1 = new CreditAccount("1", "1", 200, 2000);

Account a2 = new SavingAccount("2", "2", 300);

Account a3 = new SavingAccount("3", "3", 400);

Account a4 = new CreditAccount("4", "4", 500, 2000);

Account a5 = new CreditAccount("4", "5", 600, 2000); // 帐号4重

bank.addAccount(a1);

bank.addAccount(a2);

bank.addAccount(a3);

bank.addAccount(a4);

bank.addAccount(a5);

showNowAccount();

// 销户

bank.delAccount("1");

bank.delAccount("2");

showNowAccount();

// 存款

if(bank.existAccount("3")){

Account acc  = bank.getAccount("3");

acc.saveMoney(100);

}

showNowAccount();

// 取款

if(bank.existAccount("3")){

Account acc  = bank.getAccount("3");

System.out.println("余额=" + acc.getBalance());

acc.getMoney(100);

System.out.println("余额=" + acc.getBalance());

acc.getMoney(1000);

System.out.println("余额=" + acc.getBalance());

}

if(bank.existAccount("4")){

Account acc  = bank.getAccount("4");

System.out.println("余额=" + acc.getBalance());

acc.getMoney(100);

System.out.println("余额=" + acc.getBalance());

acc.getMoney(1000);

System.out.println("余额=" + acc.getBalance());

acc.getMoney(10000);

System.out.println("余额=" + acc.getBalance());

}

System.out.println(bank.getAccountNum());

System.out.println(bank.getAllMoney());

System.out.println(bank.getAllOverdraft());

System.out.println(bank.getCreditAccountNum());

System.out.println(bank.getSavingAccountNum());

}

public static void genAccount(){

String s = "1000 0000 0000 000";

Account a = null;

for(int i = 1; i  11; i ++){

if((i  2) == 0){

a = new CreditAccount(s + String.valueOf(i), "账户" + String.valueOf(i));

} else {

a = new SavingAccount(s + String.valueOf(i), "账户" + String.valueOf(i));

}

bank.addAccount(a);

}

}

public static void showNowAccount(){

for(Account account : bank.getAllAccount()){

System.out.println(account);

}

}

}

// 面向对象,看多写多了就会了,简单的随便写的,有错误先不用太纠结。

求高手用JAVA语言完成 银行业务ATM设计与实现

给你介绍本书《java项目开发案例精粹》,要是没记错的话上面有这个系统,你可以借鉴一下,希望能帮到你,这本书图书馆均有借的

用JAVA编写:银行业务UseAccount

这个没存货的你给150分估计也没人给你写。。。

不过挺简单,嘿嘿。

谁帮忙用JAVA设计一个银行类啊!要代码,在下感激不尽

/**

* @author

* @version 创建时间:Oct 15, 2009

* 类说明 About Bank

*/

public class Bank {

private String banksName;

private String banksAdds;

private String banksOther;

//等等......

public Bank() {

super();

}

public Bank(String banksName, String banksAdds, String banksOther) {

super();

this.banksName = banksName;

this.banksAdds = banksAdds;

this.banksOther = banksOther;

}

/**

* @return the banksName

*/

public String getBanksName() {

return banksName;

}

/**

* @param banksName the banksName to set

*/

public void setBanksName(String banksName) {

this.banksName = banksName;

}

/**

* @return the banksAdds

*/

public String getBanksAdds() {

return banksAdds;

}

/**

* @param banksAdds the banksAdds to set

*/

public void setBanksAdds(String banksAdds) {

this.banksAdds = banksAdds;

}

/**

* @return the banksOther

*/

public String getBanksOther() {

return banksOther;

}

/**

* @param banksOther the banksOther to set

*/

public void setBanksOther(String banksOther) {

this.banksOther = banksOther;

}

}

java实现银行业务类的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java写银行系统、java实现银行业务类的信息别忘了在本站进行查找喔。