「java银行子类」Java银行业务

博主:adminadmin 2023-01-15 16:45:07 469

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

本文目录一览:

JAVA 编程创建Account 类模拟银行账户。

我帮你一共写了四个类,一个账户Account类,两个账户类的子类(信用卡账户CreditCardAccount类和借记卡DebitCardAccount类),另外再加上一个演示透支效果测试Test类。 代码贴在下面:

/**

* 账户类。

*

* @author CodingMouse

* @version 1.0

*/

public abstract class Account { protected String accountNumber; // 账号

protected double overage; // 余额

protected double annualInterestRate; // 年利率

/**

* 参数化构造器方法。

*

* 用于开户。

* @param accountNumber 预设账号

* @param overage 初始余额

* @param annualInterestRate 预设年利率

*/

public Account(String accountNumber, double overage, double annualInterestRate) {

super();

// 设定账号。

this.accountNumber = accountNumber;

// 设定初始余额,至少为零。

this.overage = overage = 0 ? overage : 0;

// 设定年利率,至少为零。

this.annualInterestRate = annualInterestRate = 0 ? annualInterestRate : 0;

}

/**

* 查询账号。

* @return 返回账号。

*/

public String getAccountNumber() {

return this.accountNumber;

}

/**

* 设置账号。

* @param accountNumber 新账号。

*/

public void setAccountNumber(String accountNumber) {

this.accountNumber = accountNumber;

} /**

* 查询余额方法。

* @return 返回账户余额。

*/

public double getOverage() {

return this.overage;

} /**

* 存款方法。

* @param money 要存入的金额。

* @return 返回true时存款成功,否则存款失败。

*/

public boolean depositMoney(double money) {

// 如果金额小于零,则不能存款

if (money = 0)

return false;

// 否则将相应的金额累加到账户余额中

this.overage += money;

return true;

}

/**

* 取款方法。

*

* 默认不能透支。

* @param money 要取出的金额。

* @return 返回true时取款成功,否则取款失败。

*/

public boolean drawMoney(double money) {

// 如果账户余额不足,则不能取款

if (this.overage money)

return false;

// 否则从账户余额中扣除相应的金额

this.overage -= money;

return true;

} /**

* 查询年利率。

* @return 返回年利率。

*/

public double getAnnualInterestRate() {

return this.annualInterestRate;

} /**

* 设置年利率。

* @param annualInterestRate 新的年利率。

*/

public void setAnnualInterestRate(double annualInterestRate) {

this.annualInterestRate = annualInterestRate;

}

}

--------------------------------------------------

/**

* 借记卡账户。

*

* 不能透支。

* @author CodingMouse

* @version 1.0

*/

public class DebitCardAccount extends Account { /**

* 重写父类构造器。

* @param accountNumber 预设账号

* @param overage 初始余额

* @param annualInterestRate 预设年利率

*/

public DebitCardAccount(String accountNumber, double overage,

double annualInterestRate) {

super(accountNumber, overage, annualInterestRate);

}}

-------------------------------------------------

/**

* 信用卡账户。

*

* 可以透支。

* @author CodingMouse

* @version 1.0

*/

public class CreditCardAccount extends Account { private double overdraftLimit; // 透支限度

/**

* 重载构造器。

*

* 便于构建可透支的信用卡账户实例。

* @param accountNumber 预设账号

* @param overage 初始余额

* @param annualInterestRate 预设年利率

* @param overdraftLimit 透支限度

*/

public CreditCardAccount(String accountNumber, double overage,

double annualInterestRate, double overdraftLimit) {

super(accountNumber, overage, annualInterestRate);

this.overdraftLimit = overdraftLimit;

} /**

* 查询透支限度的方法。

* @return 透支限度金额。

*/

public double getOverdraftLimit() {

return this.overdraftLimit;

} /**

* 设置透支限度的方法。

* @param overdraftLimit 新的透支限度金额。

*/

public void setOverdraftLimit(double overdraftLimit) {

// 透支限度必须为零和正数,否则为零。

this.overdraftLimit = overdraftLimit = 0 ? overdraftLimit : 0;

} /**

* 重写父类构造器。

* @param accountNumber 预设账号

* @param overage 初始余额

* @param annualInterestRate 预设年利率

*/

public CreditCardAccount(String accountNumber, double overage,

double annualInterestRate) {

super(accountNumber, overage, annualInterestRate);

} /**

* 重写父类取款方法。

*

* 将默认不能透支的取款改为可以透支的取款。

* @param money 要取出的金额。

* @return 返回true时取款成功,否则取款失败。

*/

@Override

public boolean drawMoney(double money) {

// 如果账户余额 + 透支限度的总金额仍不足,则不能取款

if (this.overage + this.overdraftLimit money)

return false;

// 否则从账户余额中扣除相应的金额

this.overage -= money;

return true;

}}

------------------------------------------

/**

* 测试账户使用。

*

* @author CodingMouse

* @version 1.0

*/

public class Test { /**

* 主程序方法。

* @param args 入口参数。

*/

public static void main(String[] args) {

// 创建一个不能透支的借记卡账户。

System.out.println("------------ 借记卡账户 ------------");

DebitCardAccount debitCardAccount = new DebitCardAccount("CHK20100117001", 100, 0.02);

// 初始余额有100元,调用并打印取90元和取120元的结果。

System.out.println("取90元的结果:" + debitCardAccount.drawMoney(90));

// 重新存入90元

debitCardAccount.depositMoney(90);

System.out.println("取120元的结果:" + debitCardAccount.drawMoney(120));

// 创建一个可以透支的信用卡账户。

System.out.println("------------ 信用卡账户 ------------");

CreditCardAccount crebitCardAccount = new CreditCardAccount("CHK20100117002", 100, 0.03, 50);

// 初始余额有100元,并且透支限度为50元,调用并打印取90元、取120元和取160元的结果。

System.out.println("取90元的结果:" + crebitCardAccount.drawMoney(90));

// 重新存入90元

crebitCardAccount.depositMoney(90);

System.out.println("取120元的结果:" + crebitCardAccount.drawMoney(120));

// 重新存入120元

crebitCardAccount.depositMoney(120);

System.out.println("取160元的结果:" + crebitCardAccount.drawMoney(160));

}

}

-------------------------------------- 在我机器上的测试打印结果为: ------------ 借记卡账户 ------------

取90元的结果:true

取120元的结果:false

------------ 信用卡账户 ------------

取90元的结果:true

取120元的结果:true

取160元的结果:false ----------------------------------------- 这个题目只是简单考查了下封装、继承、多态三大面向对象特性,我提供的代码仅作参考。 如果你懒得复制,想要程序源代码文件或有不明白的地方,可以发邮件到我QQ邮箱,我再回给你。

Java 定义一个银行卡类

//银行卡类

public class Card{

//银行卡的属性及方法

}

//(透支)功能接口

public interface ICard{

public void enable();

}

//信用卡类,继承父类BankCard,实现接口

public class BlueCard extends Card implements ICard{

//code

}

//普通卡类,继承父类BankCard

public class BankCard extends Card{

//code

}

java中什么叫子类?

java中子类的定义为在有继承关系的类中extends前面的类则是子类。

继承,是对有着共同特性的多类事物,进行再抽象成一个类。这个类就是多类事物的父类。父类的意义在于可以抽取多类事物的共性。

子类中有和父类中可访问(可继承到子类)的同名同返回类型同参数表的方法,就会覆盖从父类继承来的方法。

直接继承Object的类可以称之为Object的子类,间接继承Object的类可以称之为object的间接子类,object则是它的间接父类或者超类。

示例:

public class Parent{

}

public class Child extends Parent{

}

对Parent、Child来说有继承关系,则Parent是Child的父类,Child是Parent的子类。由于Parent、Child都默认继承Object类,所有Parent、Child都是Object的子类。

创建Account类的两个子类(如何用Java实现)

public class Bank

{

private long balance=0;

public Bank(){}

public void draw(int x) //存款

{

if(x=balance)

{

balance=balance-x;

System.out.println("Draw "+x+" Yuan success!");

}

else

{

System.out.println("The balance remain is not enough!");

}

}

public void deposit(int x) //取款

{

balance=balance+x;

System.out.println("Deposit "+x+" Yuan success!");

}

public void check() //查询

{

System.out.println("The balance remained is "+balance+" Yuan

");

}

public static void main(String[] args)

{

Bank bank1=new Bank();

bank1.deposit(10000);

bank1.check();

bank1.draw(3000);

bank1.check();

bank1.draw(8000);

bank1.deposit(5000);

bank1.check();

bank1.draw(8000);

bank1.check();

}

}

用java编写模拟计算银行整存整取存款利息,1建立bank为抽象类,其中有两个抽象方法,计算存款

public abstract class bank {

/**

*

* @param money 存的钱

* @param years 时间

* @param interest 利息

* @return

*/

public abstract double getTotal(double money,int years,double interest);

}

public class generalBank extends bank {

public double getTotal(double money, int years, double interest) {

double total = money * years *(interest) + money;

//将double类型转化为decimal防止double运算精度显示错误

java.text.DecimalFormat decimalFormat=new java.text.DecimalFormat("0.00");

total = Double.parseDouble(decimalFormat.format(total));

return total;

}

}

public class test {

public static void main(String[] args) {

bank bank = new generalBank();

double total = bank.getTotal(10000, 1, 0.03);

System.out.println(total);

}

}

关于java银行子类和Java银行业务的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。