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.Test.java

    import java.util.Scanner;
    /**
     * 创建住宅产权房屋对象,完成住宅产权房屋首付款的计算。
     * 再将定义商业产权房屋对象传递给Payment接口对象,
     * 之后利用接口回调完成商业产权房屋首付款的计算。
     * @author X1393
     */
    public class Test {
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) 
    	{
    		// TODO Auto-generated method stub
    		Residence R = new Residence(); 	//定义对象
    		Payment C =new Commercial(); 	//定义接口对象引用Commercial
    		Scanner reader = new Scanner(System.in);
    		System.out.println("请输入房屋的总面积");
    		double S = reader.nextDouble();
    		System.out.println("请输入房屋每平方米的价格");
    		double P = reader.nextDouble();
    		System.out.println("住宅产权房屋的首付:"+R.downPay(S, P));
    		System.out.println("商业产权房屋的首付:"+C.downPay(S, P));
    	
    	}
    
    }
    

    2.Commercial.java

    /**
     * Payment接口的非抽象使用类——Commercial类
     * 重写求首付方法
     * @author X1393
     *
     */
    public class Commercial implements Payment{
    
    	@Override
    	public double downPay(double price, double area) { //重写方法
    		// TODO Auto-generated method stub
    		return price*area*0.45;
    	}
    
    }
    

    3.Residence.java

    /**
     * 定义一个Payment接口的非抽象使用类——Residence类
     * 重写求首付方法
     * @author X1393
     *
     */
    public class Residence implements Payment{
    
    	@Override
    	public double downPay(double price, double area) {  //重写方法
    		// TODO Auto-generated method stub
    		return price*area*0.2;
    	}
    
    }
    

    4.Payment.java

    /**
     * 创建接口包含计算首付的方法payment
     * @author X1393
     *
     */
    public interface Payment {
    	double downPay(double price,double area);
    }
    

    三、运行结果

  • 相关阅读:
    【Shell】Shell编程之while循环命令
    【Shell】Shell编程之grep命令
    【Shell】Shell编程之awk命令
    【Shell】Shell编程之sed命令
    【MySQL】MySQL之示例数据库Sakila下载及安装
    关于JAVA项目报表选型过程
    关于HSQLDB访问已有数据库文件的操作说明
    为什么要用 C# 来作为您的首选编程语言
    ThinkPHP_5对数据库的CURL操作
    使用ECharts画K线图
  • 原文地址:https://www.cnblogs.com/Xwwg/p/11804487.html
Copyright © 2011-2022 走看看