zoukankan      html  css  js  c++  java
  • 找回感觉之模拟房地产首付计算

    题目:

     贷款购买房屋时,支付首付款是一种功能操作,定义在Payment接口中。住宅产权房屋类和商业产权房屋类均具有支付首付款的功能。依据以上内容,创建一个接口和两个类:

    (1)接口Payment,包含:

    • double downPay(double price,double area):一个计算房屋首付款的方法,参数price代表房屋每平方米的价格,area代表房屋的总平方数,即面积。

    (2) Payment接口的非抽象使用类——Residence类(住宅产权房屋类),包含:

    • double downPay(double price,double area):重写计算房屋首付款的方法,并将结果返回(住宅产权房屋的首付比例为总房款的20%)。

    (3) Payment接口的非抽象使用类——Commercial类(商业产权房屋类),包含:

    • double downPay(double price,double area):重写计算房屋首付款的方法,并将结果返回(商业产权房屋的首付比例为总房款的45%)。

          在主类RealEstate中,创建住宅产权房屋对象,完成住宅产权房屋首付款的计算。再将定义商业产权房屋对象传递给Payment接口对象,之后利用接口回调完成商业产权房屋首付款的计算。输入测试数据,完成结果的输出。

    1.接口类

    interface Payment{ //定义接口
    double downPay(double price,double area);
    }

    2.住宅产权房屋类

    复制代码

    class Residence implements Payment{ //定义住宅房类
    public double downPay(double price,double area) {
    return price*area*0.2;
    }
    }

    复制代码

    3.商业产权房屋类

    复制代码

    class Commercial implements Payment{ //定义商品房类
    public double downPay(double price,double area) {
    return price*area*0.45;
    }
    }

    复制代码

    4.定义房屋类

    复制代码

    class House{ //定义房屋类
    double house(Payment pa,double price,double area) {
    return pa.downPay(price, area);
    }
    }

    复制代码

     

    4.主类

    复制代码

    public class RealEstate {
    public static void main(String[]args) { //主类
    House h=new House();
    int price=10000,area=140;
    System.out.println("住宅房的首付款为:"+h.house(new Residence(), price,area));
    System.out.println("商品房的首付款为:"+h.house(new Commercial(), price,area));
    }
    }

    复制代码

    运行结果

  • 相关阅读:
    List内存分配
    《深入理解JAVA虚拟机》笔记1
    oracle(三)
    常见排序算法
    C++在单继承、多继承、虚继承时,构造函数、复制构造函数、赋值操作符、析构函数的执行顺序和执行内容
    C++ Primer 有感(异常处理)(四)
    C++ Primer 有感(异常处理)(三)
    C++ Primer 有感(异常处理)(二)
    C++ Primer 有感(异常处理)
    C++ Primer 有感(多重继承与虚继承)
  • 原文地址:https://www.cnblogs.com/anemone0919/p/11808619.html
Copyright © 2011-2022 走看看