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%)。

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

    二、代码实现

    1.Payment类

    /*创建一个接口,一个计算房屋首付款方法*/
    package ccut.ch;
    public interface Payment {
    	double downPay(double price,double area);
    }
    

    2.Residence类

    /*创建一个Payment接口的非抽象使用类,重写计算房屋首付款的方法*/
    package ccut.ch;
    public class Residence implements Payment {
    	public double downPay(double price, double area) {	
    	return price*area*0.2;
    	}
    }
    

    3.Commercial类

    /*创建另一个Payment接口的非抽象使用类,重写计算房屋首付款的方法*/
    package ccut.ch;
    public class Commercial implements Payment {
    	public double downPay(double price, double area) {
    		return price*area*0.45;
    	}
    }
    

    Test1主类

    /*创建住宅产权房屋对象,提示用户输入,再将定义商业产权房屋对象传递给Payment接口对象,之后利用接口回调完成商业产权房屋首付款的计算,输出结果*/
    package ccut.ch;
    import java.util.Scanner;
    public class Test1 {
    	public static void main(String[] args) {
    		Scanner s=new Scanner(System.in);
    		Residence r= new Residence();
    		System.out.println("请输入价格(万元),面积(平方)");
    		double price = s.nextDouble();
    		double area = s.nextDouble();
    		System.out.println("住宅产权房屋的首付为:"+r.downPay(price,area)+"万元");
    		Payment p=new Commercial();
    		System.out.println("商业产权房屋的首付为" +p.downPay(price, area)+"万元");
    	}
    
    

    运行结果

  • 相关阅读:
    【LCT维护基环内向树森林】BZOJ4764 弹飞大爷
    【LCT】BZOJ3091 城市旅行
    【LCT+主席树】BZOJ3514 Codechef MARCH14 GERALD07加强版
    【最大权闭合子图】bzoj4873 [Shoi2017]寿司餐厅
    【LCT】BZOJ2049 [SDOI2008]Cave 洞穴勘测
    【有上下界的网络流】ZOJ2341 Reactor Cooling(有上下界可行流)
    【费用流】BZOJ1061: [Noi2008]志愿者招募(这题超好)
    从输入url到页面加载的过程
    forEach和map的区别
    理解 JavaScript 对象原型、原型链如何工作、如何向 prototype 属性添加新的方法。
  • 原文地址:https://www.cnblogs.com/ctt886/p/11808217.html
Copyright © 2011-2022 走看看