求java代码求圆面积!!!

2011年3月 Java大版内专家分月排行榜第三
2011年10月 Java大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。2009年6月 挨踢职涯大版内专家分月排行榜第二2009年5月 挨踢职涯大版内专家分月排行榜第二2009年3月 挨踢职涯大版内专家分月排行榜第二2008年12月 挨踢职涯大版内专家分月排行榜第二
2009年6月 Web 开发大版内专家分月排行榜第三
2009年6月 挨踢职涯大版内专家分月排行榜第二2009年5月 挨踢职涯大版内专家分月排行榜第二2009年3月 挨踢职涯大版内专家分月排行榜第二2008年12月 挨踢职涯大版内专家分月排行榜第二
2009年6月 Web 开发大版内专家分月排行榜第三
2011年4月 Java大版内专家分月排行榜第二2010年8月 Java大版内专家分月排行榜第二2010年5月 Java大版内专家分月排行榜第二2008年2月 Java大版内专家分月排行榜第二2007年7月 Java大版内专家分月排行榜第二
2011年2月 Java大版内专家分月排行榜第三2010年9月 Java大版内专家分月排行榜第三2008年9月 Java大版内专家分月排行榜第三2008年1月 Java大版内专家分月排行榜第三2007年11月 Java大版内专家分月排行榜第三2007年9月 Java大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。JAVA作业题求助,求代码~~!!!_编程 - QQ志乐园
您的当前位置: &
JAVA作业题求助,求代码~~!!!
来源: |人气:900 ℃|时间: 18:12:59
为了解决用户可能碰到关于"JAVA作业题求助,求代码~~!!!"相关的问题,志乐园经过收集整理为用户提供相关的解决办法,请注意,解决办法仅供参考,不代表本网同意其意见,如有任何问题请与本网联系。"JAVA作业题求助,求代码~~!!!"相关的详细问题如下:
某银行有许多储户,每个储户可以拥有一个或多个账号。现请你开发一个软件,管理银行储户与账号业务。要求如下:& Bank类中有一个customers集合,用来存储所有的Customer(储户)对象,addCustomer()方法用语向该集合中添加储户,getCustomer()方法根据下标值获取某个储户,getNumOfCustomer()方法获取储户总数,getCustomers()方法返回储户列表,以便获得每个储户对象‘& Customer类有一个accounts集合,用来存储某个储户的所有Account(账号)对象,addAccount()方法用于向该集合中添加账号,getAccount()方法根据下标值获取该储户的某个账号,getNumOfAccounts()方法获取该储户的账号总数,getAccounts()方法返回该储户的账号Iterator,以便获得每个账号对象。Account类是抽象类,有一个balance属性,代表余额。Deposit()方法表示存款,amount参数是存款额,Withdraw()方法表示取款,取款额amount如果超出了余额就会抛出透支异常,我们需要定义一个OverdraftException类来表示这个异常,当抛出异常时,不进行取款交易,并报告用户此项错误。SavingsAccount类表示大额存款账号,继承Account,新增一个属性interestRate,代表利率。CheckingAccount类表示大额存款账号,也继承Account,它有一个叫canOverdraft的属性,是一个boolean值,代表该账号能否透支(true——能,false——否);它还有一个叫maxOverdraft的属性,表示该账号允许的最大透支额。这个类的withdraw()方法(取款)需要考虑的因素比较多:在发生透支时,如果账号不允许透支(canOverdraft=false),则抛出异常并退出交易;如果允许透支(canOverdraft=true),但透支额(amount-balance)超出最大透支额的话,也抛出异常并退出交易;只有在不发生透支或透支额小于最大透支额时,交易才能正常进行。另外,在每次进行透支交易时,最大透支额(maxOverdraft)应作调整,以便使该账号的最大透支额随透支次数的增加而不断减少,从而避免透支的滥用,阻止信用膨胀。CheckingAccount类有两个构造方法,只带一个参数的构造方法用来初始化balance,同时设定canOverdraft=false,maxOverdraft=0.00.CustomReport类用来显示每个储户的姓名及他所有的账号的类别和余额,以报表的形式输出。根据以上描述,创建一个TestBanking类,并在其main方法中添加若干储户和账号,然后模拟存款,取款业务,并最终输出一张完整的报表。我将所有内容编写在一个文件中你可以将这些Bank中的私有类提取到单个的文件中,作为公共类使用,代码如下package help;import java.util.ArrayLimport java.util.Lpublic class Bank {&private List&Customer&&&public Bank() {&this.customers=new ArrayList&Customer&();&}&/**& * 创建一个新的储户& * @return& */&public Customer createNewCustomer(){&return new Customer();&}&/**& * 创建新账号& * @param type& * 账号类型& * @param balance& * 余额& * @return& */&public Account createNewAccount(String type,Double balance){&if(type.equals(Account.SAVINGACCOUNT)){&&return new SavingsAccount(balance);&}else if(type.equals(Account.CHECKINGACCOUNT)){&&return new CheckingAccount(balance);&}else{&&&}&}&@Override&public String toString() {&StringBuilder bank=new StringBuilder();&int i=1;&for(Customer customer : this.customers){&&bank.append("==================================================================");&&bank.append("储户 "+i+"n");&&bank.append(customer.toString());&}&return bank.toString();&}&/**& * 添加储户& */&public void addCustomer(Customer customer){&this.customers.add(customer);&}&/**& * 获取指定的储户& * @param index& * 指定储户的下标& * @return& * 储户实例& */&public Customer getCustomer(Integer index){&return this.customers.get(index);&}&/**& * 获取储户总数& * @return& * 储户总数& */&public Integer getNumOfCustomer(){&return this.customers.size();&}&/**& * 获取储户列表& * @return& * 储户列表& */&public List&Customer& getCustomers(){&return this.&}&private class Customer{&private List&Account&&private S&/**& * 默认构造方法& */&public Customer() {&&this.accounts=new ArrayList&Account&();&}&/**& * 添加账户& * @param account& */&public void addAccount(Account account){&&this.accounts.add(account);&}&/**& * 返回指定账户& * @param index& * 指定账户的下标& * @return& */&public Account getAccount(Integer index){&&return this.accounts.get(index);&}&/**& * 获取账户总数& * @return& */&public Integer getNumOfAccount(){&&return this.accounts.size();&}&/**& * 获取账户列表& * @return& */&public List&Account& getAccounts(){&&return this.&}&/**& * 获取储户姓名& * @return& */&public String getName() {&&&}&/**& * 设置储户姓名& * @param name& */&public void setName(String name) {&&this.name =&}&@Override&public String toString() {&&StringBuilder info=new StringBuilder();&&info.append("姓名:"+this.name+"n");&&int i=1;&&for(Account account : this.accounts){&&info.append("-&账号 "+i+" : "+account.toString()+"n");&&i++;&&}&&return info.toString();&}&}&private abstract class Account{&/**& * 余额& */&private static final String SAVINGACCOUNT="SavingsAccount";&private static final String CHECKINGACCOUNT="CheckingAccount";&private D&public Account() {&&this.balance=0.0;&}&&public Account(Double balance) {&&super();&&this.balance =&}&/**& * 存款& * @param amount& * 存款额& */&public void Deposit(Double amount){&&this.balance+=&}&/**& * 取款 & * @param amount& * 取款额& * @throws OverdraftException & */&public void Withdraw(Double amount) throws OverdraftException{&&if(amount&this.balance){&&throw new OverdraftException();&&}else{&&//交易&&this.balance-=&&}&}&public Double getBalance() {&&&}&public void setBalance(Double balance) {&&this.balance =&}&@Override&public String toString() {&&return "余额:"+this.&}&}&private class SavingsAccount extends Account{&/**& * 利率& */&private Double interestR&public SavingsAccount(Double balance) {&&super(balance);&}&/**& * 获取利率& * @return& */&public Double getInterestRate() {&&return interestR&}&/**& * 设置利率& * @param interestRate& */&public void setInterestRate(Double interestRate) {&&this.interestRate = interestR&}&@Override&public String toString() {&&return "SavingsAccount型账号-&"+super.toString();&}&/**& * 您需要覆盖的SavingAccount型账号的存款方法& * 当前为调用其超类方法& */&@Override&public void Deposit(Double amount) {&&// TODO 您需要覆盖的SavingAccount型账号的存款方法&&super.Deposit(amount);&}&/**& * 您需要覆盖的SavingAccount型账号的取款方法& * 当前为调用其超类方法& */&@Override&public void Withdraw(Double amount) throws OverdraftException {&&// TODO 您需要覆盖的SavingAccount型账号的取款方法&&super.Withdraw(amount);&}&&}&private class CheckingAccount extends Account{&/**& * 能否透支& */&private boolean canO&/**& * 最大透支金额& */&private Double maxO&public CheckingAccount(Double balance){&&super(balance);&&this.canOverdraft=&&this.maxOverdraft=0.0;&}&public CheckingAccount(Double balance,boolean canOverdraft, Double maxOverdraft) {&&super(balance);&&this.canOverdraft = canO&&this.maxOverdraft = maxO&}&/**& * 您需要覆盖的CheckingAccount型账号的存款方法& * 当前为调用其超类方法& */&@Override&public void Deposit(Double amount) {&&// TODO 您需要覆盖的CheckingAccount型账号的存款方法&&super.Deposit(amount);&}&/**& * 您需要覆盖的CheckingAccount型账号的取款方法& * 当前为调用其超类方法& */&@Override&public void Withdraw(Double amount) throws OverdraftException {&&if(this.canOverdraft){&&Double overDraft=this.getBalance()-&&if(overDraft&=this.maxOverdraft){&&&// TODO 您需要覆盖的CheckingAccount型账号的取款方法&&&super.Withdraw(amount);&&}else{&&&throw new OverdraftException();&&}&&}else{&&super.Withdraw(amount);&&}&}&@Override&public String toString() {&&return "CheckingAccount型账号-&"+super.toString();&}&public boolean isCanOverdraft() {&&return canO&}&public void setCanOverdraft(boolean canOverdraft) {&&this.canOverdraft = canO&}&public Double getMaxOverdraft() {&&return maxO&}&public void setMaxOverdraft(Double maxOverdraft) {&&this.maxOverdraft = maxO&}&}&public class CustomReport{&public void Display(Bank bank){&&System.out.println(bank.toString());&}&}&/**& * 透支异常& */&private class OverdraftException extends Exception{&private static final long serialVersionUID = -252975L;&public OverdraftException() {&&super("透支异常");&}&}&private static class TestBanking{&public static void main(String[] args) {&&Bank bank=new Bank();&&Customer c=bank.createNewCustomer();&&c.setName("Test Customer");&&Account a=bank.createNewAccount(Account.SAVINGACCOUNT, 100.0);&&c.addAccount(a);&&bank.addCustomer(c);&&CustomReport cr=bank.new CustomReport();&&cr.Display(bank);&}&}}文浩
||||点击排行

我要回帖

更多关于 java双向证书请求代码 的文章

 

随机推荐