• 继承与super用法


    package hello;

    public class Account {
    protected int id;
    protected double balance;
    protected double annualInterestRate;
    public Account(int id, double balance, double annualInterestRate) {
    super();
    this.id = id;
    this.balance = balance;
    this.annualInterestRate = annualInterestRate;
    }
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public double getBalance() {
    return balance;
    }
    public void setBalance(double balance) {
    this.balance = balance;
    }
    public double getAnnualInterestRate() {
    return annualInterestRate;
    }
    public void setAnnualInterestRate(double annualInterestRate) {
    this.annualInterestRate = annualInterestRate;
    }
    public double getMonthlyInterest(){
    return annualInterestRate/12;
    }
    public void withdraw(double amount){
    if(balance>=amount){
    balance-=amount;
    }else{
    System.out.println("余额不足");
    }
    }
    public void despoit(double amount){
    balance+=amount;
    }
    }

    package hello;

    public class TestAccount {
    public static void main(String[] args){
    Account acct=new Account(1122,20000,0.045);
    acct.withdraw(30000);
    System.out.println("余额为:"+acct.getBalance());
    acct.withdraw(2500);
    acct.despoit(3000);
    System.out.println("余额为:"+acct.getBalance());
    System.out.println("月利率为:"+acct.getMonthlyInterest());
    }
    }

    package hello;

    public class CheckAccount extends Account {
    private double overdraft;
    public CheckAccount(int id, double balance, double annualInterestRate,double overdraft){
    super(id,balance,annualInterestRate);
    this.overdraft=overdraft;
    }
    public double getOverdraft() {
    return overdraft;
    }
    public void setOverdraft(double overdraft) {
    this.overdraft = overdraft;
    }
    public void withdraw(double amount){
    if(amount<=balance){
    balance-=amount;
    }else if(overdraft>=(amount-balance)){
    overdraft-=(amount-balance);
    balance=0;
    }else{
    System.out.println("超过可透支额度");
    }
    }
    }

    package hello;

    public class TestCheckAccount {
    public static void main(String[] args){
    CheckAccount ca=new CheckAccount(1122,20000,0.045,5000);
    ca.withdraw(5000);
    System.out.println("账户余额为:"+ca.getBalance());
    System.out.println("可透支额度为:"+ca.getOverdraft());
    }
    }

  • 相关阅读:
    java--键盘事件类,按下回车则模拟鼠标
    java记录之数据库操作编写程序实现用户登录、注册、修改密码
    Java记录之简易记事本
    java记录之Date的使用
    java常用实用类的使用
    java组件练习之复数计算器和下拉框联动
    Java记录参数传递和split
    Java记录--简单的继承
    JVM调优
    linux学习1-------------环境部署搭建
  • 原文地址:https://www.cnblogs.com/alhh/p/5368465.html
Copyright © 2020-2023  润新知