zoukankan      html  css  js  c++  java
  • 创建一个简单的银行程序包

    创建一个简单的银行程序包

     

    练习目标-Java 语言中面向对象的封装性及构造器的使用。

    任务

    在这个练习里,创建一个简单版本的(账户类)Account类。将这个源文件放入banking程序包中。在创建单个帐户的默认程序包中,已编写了一个测试程序TestBanking。这个测试程序初始化帐户余额,并可执行几种简单的事物处理。最后,该测试程序显示该帐户的最终余额。

                                                          

    1. 创建banking

    2. banking 包下创建Account类。该类必须实现上述UML框图中的模型。

    1. 声明一个私有对象属性:balance,这个属性保留了银行帐户的当前(或即时)余额。
    2. 声明一个带有一个参数(init_balance)的公有构造器,这个参数为balance属性赋值。
    3. 声明一个公有方法getBalance,该方法用于获取经常余额。
    4. 声明一个公有方法deposit,该方法向当前余额增加金额。
    5. 声明一个公有方法withdraw从当前余额中减去金额。

    3. 编译TestBanking.java文件。

    4. 运行TestBanking类。可以看到下列输出结果:

      Creating an account with a 500.00 balance

    Withdraw 150.00

    Deposit 22.50

    Withdraw 47.62

    The account has a balance of 324.88

    package banking;
    
    public class Account 
    {
        //成员属性
        private double balance ;//余额
    
        // 无参构造
        public Account() 
        {
            
        }
        // 有参构造
        public Account(double balance) 
        {
            this.balance = balance;
        }
        
        // set  get 
        public double getBalance()
        {
            return balance;
        }
        public void setBalance(double balance)
        {
            this.balance = balance;
        }
        
        //成员方法--存款
        public double deposit( double amt ) 
        {
            if(amt<0)
            {
                System.out.println("您的存款金额不能小于0");
            }
            return balance += amt ; 
        }
        
        //成员方法--取款
        public double withdraw( double amt )
        {
            
            if(amt<0)
            {
                System.out.println("您的取款金额不能小于0");
            }
            if(amt>balance)
            {
                System.out.println("您的取款金额不能大于您的存款金额");
            }
            return balance -= amt ;
        }
        
        
        public boolean withdraw1( double amt )
        {
            if(amt>0&&amt<balance==true)
            {
                balance -= amt ;
                System.out.print("Withdraw " + amt+" : ");
                return true ;
            }
            else
            {
                System.out.print("Withdraw " + amt+" : ");
                return false ;
            }
        }
        
        public boolean deposit1( double amt ) 
        {
            if(amt<0)
            {
                System.out.print("Deposit " + amt+" : " );
                return false ;
            }
            else
            {
                balance += amt ;
                System.out.print("Deposit " + amt +" : ");
                return true ;
            }
        }
        
        
        
        
        
    }
    package banking;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    
    public class TestBanking {
    
        public static void main(String[] args) 
        {
            //实例化账户
            Account at = new Account(500) ;
            
            System.out.println("Creating an account with a  "+at.getBalance( ) +" balance") ;
            System.out.println("Withdraw "+(at.getBalance( ) -at.withdraw(150) ));
            double x=at.getBalance( );
            System.out.println("Deposit "+(at.deposit(22.5)-x)) ;
            System.out.println("Withdraw "+(at.getBalance( ) -at.withdraw(47.62) ));
            System.out.println("The account has a balance of "+at.getBalance()) ;
            
            System.out.println("————————————————————————");
            
            System.out.println("————————————————————————");
        }
    
    }

  • 相关阅读:
    中南大学ACM12月月赛第二场热身赛解题报告
    中南大学ACM12月月赛第二场热身赛在本周日(2011年11月20日)举行
    IPv4 and IPv6
    Java and IPV6
    IPv6 and Java
    poj3385
    poj3390
    poj3226
    poj3767
    poj3497
  • 原文地址:https://www.cnblogs.com/20gg-com/p/5905926.html
Copyright © 2011-2022 走看看