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 }

    运行结果:

  • 相关阅读:
    Android--Android studio --布局管理
    Android--Android studio --Activity
    Android--Android studio --app运行
    Android--Android studio 工程目录分析
    Java--Niit-ch2--Location本地化问题
    C--循环实现和递归实现的比较
    C--函数调用
    【未完待续】Java蓝桥杯--算法训练 数学知识的运用
    【未完待续】Java蓝桥杯--算法训练(1)典型问题的递归框架
    NIIT2--JAVA活动(一)制作内部类 正则内部类
  • 原文地址:https://www.cnblogs.com/lietian12345/p/11851691.html
Copyright © 2011-2022 走看看