zoukankan      html  css  js  c++  java
  • 找回感觉的练习

    1、题目:贷款购买房屋时,支付首付款是一种功能操作,定义在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%)。

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

    2、代码/*定义 一个借接口

    *有一个计算首付款的方法
    * */
    package com;
    public interface Payment { //接口
    double downPay(double price,double area);//首付款的方法
    }

    Residence.java

    /*有2个成员变量价格和面积
    * 一个构造方法
    * 重写了接口中计算首付款的方法*/
    package com;
    public class Residence implements Payment {//实现了Payment接口
    double price; //成员变量价格
    double area; //成员变量面积
    public Residence(double price, double area) {//构造方法
    super();
    this.price = price;
    this.area = area;
    }
    public double downPay(double price, double area) {//首付款的方法
    return price*area*0.2;
    }
    }

    Commercial.java

    /*有2个成员变量
    * 一个构造方法
    * 一个计算首付款的方法
    * */
    package com;
    public class Commercial implements Payment {//实现了Payment接口
    double price;//成员变量价格
    double area;//成员变量面积
    public Commercial(double price, double area) {//构造方法
    super();
    this.price = price;
    this.area = area;
    }
    @Override
    public double downPay(double price, double area) {//首付款的方法
    return price*area*0.45;
    }

    }

    Test.java

    /*创建了 Residence和Commercial的对象
    * 分别调用各自的计算首付款方法
    *
    * */
    package com;
    import java.util.Scanner;
    public class Test {
    public static void main(String[] args) {
    Residence re=new Residence(0, 0);//创建Residence对象
    Scanner sc=new Scanner(System.in);
    System.out.println("请输入每平米的价格");
    double price=sc.nextDouble();
    System.out.println("请输入面积");
    double area=sc.nextDouble();
    System.out.println("住宅区首付款"+re.downPay(price, area));
    Payment com=new Commercial(0,0);//接口回调
    System.out.print("商业区首付款"+com.downPay(price, area));
    }
    }

    3.运行截图

  • 相关阅读:
    洛谷 P1200.[USACO1.1]你的飞碟在这儿Your Ride Is Here
    洛谷 P1055.ISBN号码
    洛谷 P1567.统计天数
    洛谷 P2141.珠心算测验
    洛谷 P1428.小鱼比可爱
    洛谷 P1427.小鱼的数字游戏
    洛谷 P1047.校门外的树
    洛谷 P1046.陶陶摘苹果
    洛谷 P1980.计数问题
    洛谷 P1424.小鱼的航程(改进版)
  • 原文地址:https://www.cnblogs.com/LJTQ/p/11806754.html
Copyright © 2011-2022 走看看