zoukankan      html  css  js  c++  java
  • 第10次作业

    题目1

    一、

    编写一个应用程序,模拟中介和购房者完成房屋购买过程。

    共有一个接口和三个类:

    • Business—— 业务接口
    • Buyer —— 购房者类
    • Intermediary—— 中介类
    • Test —— 主类

    二、代码

    1.Business.java

    /**
    业务接口包括:
    两个成员变量
    RATIO: double型代表房屋中介收取的中介费用占房屋标价的比例,初值为0.022
    TAX:double型代表购房需要交纳的契税费用占房屋标价的比例,初值为0.03
    一个方法表示房屋总价
     * @author X1393
     */
    public interface Business {
    	double RATIO=0.022;
    	double TAX=0.03;
    	void buying (double price);
    }
    

    2.Buyer.java

    /**
     *  * 购房者类Buyer是业务接口Business的非抽象使用类,包括:
    一个成员变量表示购房者姓名
    一个方法:显示输出购买一套标价为price元的住宅
     * @author X1393
     *
     */
    public class Buyer implements Business {
    	String name;
        Buyer (String name){
            this.name=name;
        }
    	public void buying (double price){
    		System.out.println("一套住宅的标价为"+price);
    	}
    }
    

    3.Intermediary.java

    /**
    中介类Intermediary是业务接口Business的非抽象使用类,包括:
    一个成员变量代表房屋中介接待的购房对象
    三个方法
    构造方法
    buying 购房者buyer购买一套标价为price元的住宅,之后计算需要支付的中介费和交纳的契税
    charing表示计算购买标价为price元的住宅时,房屋中介需要收取的中介费和需要交纳的契税
     *
     */
    public class Intermediary implements Business{
    	Buyer buyer;
    	Intermediary(Buyer buyer){
    		this.buyer=buyer;
    	}
    	public void buying(double price) {
    		// TODO Auto-generated method stub
    		System.out.println(buyer.name+"所需要支付的中介费"+price*Business.RATIO+"和交纳的契税"+price*Business.TAX);
    	}
    	public void charing(double price){
    		System.out.println("房屋中介所需要收取的中介费"+price*Business.RATIO+"和交纳的契税"+price*Business.TAX);
    	}
    
    }
    

    4.Test.java

    /**
     * Test主类中包含主方法
     * 创建Intermediary类对象和Buyer类对象
     * 调用方法显示需交纳的中介费和契税。
     */
    import java.util.Scanner;
    public class Test {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("请输入房屋的价格");
    		Scanner reader = new Scanner(System.in);
    		double price=reader.nextDouble();
    		Buyer buyer=new Buyer("lisa");   
            Intermediary A=new Intermediary(buyer); //创建对象
            buyer.buying(price);   
            A.buying(price);
            A.charing(price);
    
    	}
    
    }
    

    三、运行结果

    题目2

    一、输入5个数,代表学生成绩,计算其平均成绩。当输入值为负数或大于100时,通过自定义异常处理进行提示。

    二、代码

    1.MyExcept.java

    /**
     * @author X1393
     *创建自定义异常MyExcept类继承Exception类
     *包含构造方法
     *返回自定义异常的描述信息
     */
    public class MyExcept extends Exception {
    	private int exceptnumber;
    	public MyExcept(int a) {
    		// TODO Auto-generated constructor stub
    		exceptnumber=a;
    	}
    	public String toString(){
    		return "数据异常";   //自定义异常的描述信息
    	}
    
    }
    

    2.TEST.java

    /**
     * 创建主类包含
     * 自定义异常的声明
     * 计算平均成绩的主方法
     * 异常处理try
     * 捕获异常catch
     */
    import java.util.Scanner;
    public class TEST {
    	static void makeExcept(int a)throws MyExcept{   //声明异常
    		if(a<0||a>100)
    			throw new MyExcept(a);   //抛出自定义异常MyExcept
    	}
    
    public static void main(String[] args)
    {
    		// TODO Auto-generated method stub
    	int sum=0;
    	int average;
    	try
    	{
    			for(int i=0;i<=5;i++)
    			{
    			Scanner reader = new Scanner(System.in);
    			int a=reader.nextInt();
    			makeExcept(a);
    			sum+=a;
    			}
    			average = sum / 5;
    			System.out.println("平均成绩为"+average);
    	}
    	catch(MyExcept e)			//捕获自定义异常MyExcept
    	{
    		System.out.println(e);
    	}
    }
    
    }
    

    三、运行结果

  • 相关阅读:
    【java】对象赋值给另一个对象
    spring boot系列(五)spring boot 配置spring data jpa (查询方法)
    Spring Data JPA 查询
    Spring Data JPA 介绍
    OpenID简介
    OAUTH协议介绍
    URL encoding(URL编码)
    RESTful 介绍
    spring boot系列(四)spring boot 配置spring data jpa (保存修改删除方法)
    spring boot 启动报 java.lang.NoClassDefFoundError: ch/qos/logback/core/spi/LifeCycle 错误
  • 原文地址:https://www.cnblogs.com/Xwwg/p/11848252.html
Copyright © 2011-2022 走看看