合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

        program代做、Java程序語言代寫

        時間:2024-02-01  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



        Interfaces & Abstract Classes
        Bank Account
        1.2  What to do
        For this lab, you will design and implement the start of a banking solution for a neighborhood bank. There are two types of accounts the bank wants you to implement: one called SavingsAccount and one called CheckingAccount. Your interface and all classes must be in the bank package.
        Both accounts can do the following:
        **3;Create a new account by specifying a “starter” amount of money to open it with. The starter amount must be greater than or equal to one cent.
        Do this: Create a constructor that takes a single parameter (of type double) that represents the “starter amount” for the account. If the amount specified is negative OR the amount is less than one cent ($0.01), throw an IllegalArgumentException
        **3;Deposit into their account.
        Do this: Create a method called deposit that takes a single parameter (of type double) that represents the amount deposited into the account. If the amount specified is negative, throw an IllegalArgumentException
        **3;Withdraw from their account. If the amount specified is greater than the balance available, this operation fails and returns false.
        Do this: Create a method called withdraw that reduces the account balance by the amount specified. Return true if the transaction is successful, false otherwise. (Hint:  test for a variety of cases here, i.e. values > 0, 0 ...etc, what other cases may cause the withdraw transaction to fail)
        Check their balance. 
        Do this: Create a method getBalance that returns a double (the current account balance)
        Non-customer behavior you must implement:
        Bank administrators can perform monthly maintenance to assess monthly fees and give a “clean slate” for the subsequent month.
        Do this: Create a performMonthlyMaintenance method to charge any fees and then reset transaction counters to zero.
        Do this: Create a toString method that prints the account balance in dollars/cents format (e.g: $10.00). You may want to look up the documentation for the String.format method for this part, or use the DecimalFormat class if you wish.
         
        You are required to use the IAccount interface as specified below.  Both types of accounts implement this interface, so that the bank can access either account through that common protocol. You will need to consider behavior variations as described below.
        Behavior variations for a SavingsAccount withdraw() method: Savings accounts allow for 6 penalty-free withdrawal transactions per month. Savings accounts allow for an unlimited number of deposits per month.
        Rules:
        If the amount specified for the withdrawal is negative, the operation fails. If the number of withdrawals for the month is greater than 6, a transaction penalty of $14 is deducted from the account when monthly maintenance is performed
        Behavior variations for a CheckingAccount performMonthlyMaintenance() method: A minimum balance of $100 must be maintained throughout the month to avoid fees
        Rules:
        If the checking balance falls below $100 at ANY time during the month (before maintenance is performed) an account maintenance fee of $5 is charged when the monthly maintenance is performed.
        Notes
        For each method you write:
        Design the signature of the method.
        Write Javadoc-style comments for that method.
        Write the body for the method.
        Write one or more tests that check that the method works as specified in all cases.
        Avoid duplicating code as much as possible. You will likely want to use an abstract superclass and “push” common method code up to that class. Feel free to create private “helper” methods if you need to.
        Be sure to use access modifiers, private, default (no keyword), protected, and public appropriately.
        Include JavaDoc for your classes and constructors as appropriate. You do not need to repeat JavaDoc already existing in a superclass or interface when you override a method. (This is true for the course in general.)
        Provide a UML class diagram for your solution.
        Here is the IAccount interface. This is the "contract" your solution is agreeing to implement
        /**
         * This interface represents a bank account. It is the super-type for
         * any other type of traditional financial account a bank might offer
         */

        public interface IAccount {
          void deposit(double amount);
          boolean withdraw(double amount);
          double getBalance();
          void performMonthlyMaintenance();
        }
        如有需要,請加QQ:99515681 或WX:codehelp

        掃一掃在手機打開當前頁
      1. 上一篇:COSC2276代做、C/C++語言程序代寫
      2. 下一篇:代做CSCI203、代寫Python/c++編程語言
      3. 無相關信息
        合肥生活資訊

        合肥圖文信息
        出評 開團工具
        出評 開團工具
        挖掘機濾芯提升發動機性能
        挖掘機濾芯提升發動機性能
        戴納斯帝壁掛爐全國售后服務電話24小時官網400(全國服務熱線)
        戴納斯帝壁掛爐全國售后服務電話24小時官網
        菲斯曼壁掛爐全國統一400售后維修服務電話24小時服務熱線
        菲斯曼壁掛爐全國統一400售后維修服務電話2
        美的熱水器售后服務技術咨詢電話全國24小時客服熱線
        美的熱水器售后服務技術咨詢電話全國24小時
        海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
        海信羅馬假日洗衣機亮相AWE 復古美學與現代
        合肥機場巴士4號線
        合肥機場巴士4號線
        合肥機場巴士3號線
        合肥機場巴士3號線
      4. 上海廠房出租 短信驗證碼 酒店vi設計

        主站蜘蛛池模板: 亚洲欧洲无码一区二区三区| 中文字幕av一区| 亚洲av区一区二区三| 一区二区乱子伦在线播放| 一区二区三区在线播放视频| 久久国产精品免费一区| 亚洲一区二区三区久久久久| 爆乳熟妇一区二区三区霸乳| 亚洲国产美国国产综合一区二区 | 国产观看精品一区二区三区| 国产在线一区二区| 国产裸体舞一区二区三区| 久久亚洲一区二区| 国产精品福利一区| 亚洲啪啪综合AV一区| 国产精品无码亚洲一区二区三区| 亚洲日本一区二区| 亚洲AV无码国产一区二区三区 | 精品亚洲AV无码一区二区 | 性色AV 一区二区三区| 午夜无码一区二区三区在线观看 | 亚洲AV无码一区二区三区在线观看| 亚洲欧美成人一区二区三区| 春暖花开亚洲性无区一区二区| 日韩在线不卡免费视频一区| AA区一区二区三无码精片 | 久久久久国产一区二区三区| 狠狠色综合一区二区| 亚洲AV日韩AV天堂一区二区三区| 波多野结衣在线观看一区| 色欲AV蜜桃一区二区三| 人妻无码一区二区三区AV| 国产婷婷色一区二区三区| 国产一区二区三精品久久久无广告| 一区免费在线观看| 综合无码一区二区三区四区五区 | 日本一区二区三区日本免费| 在线观看一区二区三区视频| 国产成人高清亚洲一区91| 日韩精品一区二区三区视频| 波多野结衣的AV一区二区三区 |