• 找回感觉的练习


    题目

     贷款购买房屋时,支付首付款是一种功能操作,定义在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接口对象,之后利用接口回调完成商业产权房屋首付款的计算。输入测试数据,完成结果的输出。

    Test

    /**
     * 定义了两个静态公开成员变量
     * 创建了两个对象
     */
    
    package House;
    import java.util.Scanner;
    public class     {
        static double price;
        static double area;
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner reader = new Scanner(System.in);
            Residence residence=new Residence();//定义了Residence对象
            Payment payment=new Commercia();//将Commercial类的对象赋给Payment对象
            
            System.out.println("输入建筑面积:");
            area = reader.nextDouble();
            System.out.println("输入每平米价格:");
            price= reader.nextDouble();
            residence.downPay(price, area);
            
            System.out.println("住宅产权房屋的首付为"+residence.downPay(price,area));
            System.out.println("商业产权房屋的首付为"+payment.downPay(price,area));
            
        }
    
    }

    Commercia

    /**
     * 定义了两个公开型成员变量
     */
    package House;
    public class Commercia implements Payment{
    
        double price;
        double area;
    
        public double downPay(double price, double area) {
            // TODO Auto-generated method stub
            this.price = price;
            this.area = area;
                    
            return price * area * 0.45;
            
        }
    
    }

    Residence

    /**
     * 定义了两个成员变量
     */
    package House;
    public  class Residence implements Payment{
    
         double price;
         double area;
    
        @Override
        public double downPay(double price, double area) {
            // TODO Auto-generated method stub
            this.price = price;
            this.area = area;
                    
            return price * area * 0.2;
        }
        
    }

    Payment

    package House;
    public interface Payment {
        double downPay(double price,double area);
    }
  • 相关阅读:
    Hadoop学习笔记—20.网站日志分析项目案例(二)数据清洗
    python四舍五入保留2位小数
    查看python中的keywords(关键字)和modules
    c:forEach实现动态select标签
    解决Windows上数据库密码忘记问题
    Java读取properties文件总结
    URL地址最大长度问题
    Servlet生命周期
    解决mysql 数据库连接密码
    Java中int与integer的区别
  • 原文地址:https://www.cnblogs.com/sunshuaiqun/p/11809422.html
Copyright © 2020-2023  润新知