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

    题目:

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

    代码:

     1 /**
     2  * @author 李佳琦
     3  *雨课堂作业
     4  */
     5 package Throwable;
     6 
     7 import java.util.Scanner;
     8 
     9 class MyException extends Exception{   //创建一个自定义异常类并继承exception父类
    10     private double number;
    11     MyException(double x){
    12         number=x;
    13     }
    14     public String toString(){    //自定义异常
    15         return "自定义异常["+number+"超出分数范围]";
    16     }
    17 }
    18 
    19 public class Test {
    20     static void aver()throws MyException{   //在测试类中创建求平均值的方法并声明异常
    21         double x;
    22         double  sum=0;
    23         Scanner reader=new Scanner(System.in);
    24         System.out.println("请输入各科分数:");
    25         for(int i=0;i<5;i++){
    26             x=reader.nextDouble();
    27             sum+=x;
    28             if(x<0||x>100){
    29                 throw new MyException(x);//抛出自定义异常MyException
    30             }
    31         }
    32     System.out.println("平均分数为"+sum/5);
    33     }
    34     public static void main(String[] args) {
    35         try{
    36             aver();
    37         }catch(MyException yichang){        //最后在主方法中捕捉异常
    38             System.out.println("捕获"+yichang);
    39         }
    40     }
    41 
    42 }

    运行结果:

    题目:

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

    共有一个接口和三个类:

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

    1.业务接口

    业务接口包括:

    (1)两个数据域(成员变量)

    RATIO: double型,代表房屋中介收取的中介费用占房屋标价的比例,初值为0.022

    TAX:double型,代表购房需要交纳的契税费用占房屋标价的比例,初值为0.03

    (2)一个方法

    void buying (double price):price表示房屋总价

    2.购房者类

    购房者类Buyer是业务接口Business的非抽象使用类,包括:

    (1)一个成员变量

    name:String型,表示购房者姓名

    (2)一个方法:

    public void buying (double price):显示输出购买一套标价为price元的住宅

    3.中介类

    中介类Intermediary是业务接口Business的非抽象使用类,包括:

    • 一个成员变量

    buyer:Buyer型,代表房屋中介接待的购房对象

    • 三个方法

    Intermediary(Buyer buyer):构造方法

    public void buying (double price):购房者buyer购买一套标价为price元的住宅,之后计算需要支付的中介费和交纳的契税

    public void charing(double price):表示计算购买标价为price元的住宅时,房屋中介需要收取的中介费和需要交纳的契税(中介费计算公式:房屋标价* RATIO,契税计算公式:房屋标价*TAX

    4.Test类

    在Test类中定义购房对象——姓名Lisa,从控制台输入她计划买的房屋标价,如650000元。请你通过上面定义的接口和类,实现她通过中介买房的过程,显示需交纳的中介费和契税。

    代码:

     1、Business.java

     1 /**
     2  * @author 李佳琦
     3  */
     4 package exception;
     5 
     6 public interface Business {
     7     public static double RATIO=0.022;
     8     public static double TAX=0.03;
     9     void buying (double price);
    10 }

    2、Buyer.java

     1 /**
     2  * @author 李佳琦
     3  */
     4 package exception;
     5 
     6 public class Buyer implements Business {
     7     String name;
     8     public void buying(double price) {
     9         System.out.println("房屋标价为:"+price);
    10 
    11     }
    12 
    13 }

    3、intermediary.java

     1 /**
     2  * @author 李佳琦
     3  */
     4 package exception;
     5 
     6 public class Intermediary implements Business {
     7     Buyer buyer;
     8     Intermediary(Buyer buyer){
     9         this.buyer=buyer;
    10     }
    11     public void buying(double price) {
    12         System.out.println("购房者:"+buyer.name+"————购买了一套房屋标价为:"+price+"的住宅");
    13     }
    14     public void charing(double price){
    15         System.out.println("房屋中介需要收取的中介费为:"+price*RATIO);
    16         System.out.println("房屋中介需要交纳的契税为:"+price*TAX);
    17     }
    18 
    19 }

    4、Test.java

     1 /**
     2  * @author 李佳琦
     3  */
     4 package exception;
     5 
     6 import java.util.Scanner;
     7 
     8 public class Test {
     9 
    10     public static void main(String[] args) {
    11         Scanner reader=new Scanner(System.in);
    12         double price=reader.nextDouble();
    13         Buyer buyer=new Buyer();
    14         buyer.buying(price);
    15         buyer.name="李佳琦";
    16         System.out.println("姓名:"+buyer.name);
    17         Intermediary i=new Intermediary(buyer);
    18         i.buying(price);
    19         i.charing(price);
    20     }
    21 
    22 }

    运行结果:

  • 相关阅读:
    627. Swap Salary
    176. Second Highest Salary
    596. Classes More Than 5 Students
    183. Customers Who Never Order
    181. Employees Earning More Than Their Managers
    182. Duplicate Emails
    175. Combine Two Tables
    620. Not Boring Movies
    595. Big Countries
    HDU 6034 Balala Power! (贪心+坑题)
  • 原文地址:https://www.cnblogs.com/lietian12345/p/11851691.html
Copyright © 2011-2022 走看看