首页 > 其他分享 >Problem D: 异常2

Problem D: 异常2

时间:2023-03-16 21:14:32浏览次数:18  
标签:name void 字符串 Problem dangerException 异常 public String

Problem Description 检查危险品程序:生成货物类、机器类,货物类有属性name,机器类有检测的check方法,若货物名称是炸弹、毒药、刀具,则抛出异常提示。

代码如下:

import java.util.Scanner;
class goods{
  String name;
  public void setName(String name){
      this.name=name;
  }
  public String getName(){
     return name;
  }
}

// 你的代码将嵌入这里
class Main{
  public static void main(String args[]){
     Scanner sc=new Scanner(System.in);
     String input=sc.nextLine();
     goods g=new goods();
     g.setName(input);
     machine m=new machine(g);
     try{
        m.check();
     }catch(dangerException e){
        e.showMessage();
     }
  }
}

Input Description: bomb 或 poison 或 knife   Output Description:

bomb 或 poison 或 knife

Dangerous!!

  题目分析   个人觉得这道题目易错点是: 1.java中进行两个字符串变量或一个字符串变量与一个字符串常量进行比较时不可以用“==”,因为使用== 比较的是两个字符串的引用是否相等, 可以理解为比较两个字符串在内存中的地址是否相等。   2.输入为随意一件货物,并且进行输出!!!注意字符串不要含空格
  剩下的异常处理部分和上一道题目差不多,用throws关键字修饰方法,用throw在函数中抛出异常。   接下来是我的ac答案:
 1 class dangerException extends Exception{
 2     String massage;
 3     public dangerException(){}
 4     public dangerException( String x )
 5     {
 6         this.massage = x;
 7     }
 8     void showMessage()
 9     {
10         System.out.println(massage);
11     }
12 }
13 class machine{
14     String name;
15     public machine( goods g )
16     {
17         name = g.name;
18         System.out.println(name);
19     }
20     void check() throws dangerException
21     {
22         if( name.equals("bomb") || name.equals("poison") || name.equals("knife") ){
23             throw new dangerException("Dangerous!!");
24         }
25     }
26 }

 

标签:name,void,字符串,Problem,dangerException,异常,public,String
From: https://www.cnblogs.com/hangsingplus/p/17224135.html

相关文章

  • C++ 异常
    C++异常exception《C++Primer中文版第五版》Ch5.61.try语句块和异常处理典型的异常失去数据库连接遇到意外输入如果程序的问题是输入无效,则异常处理部......
  • Dart 异常
    异常抛出异常抛出异常的方式有3种fun()=>throw"error";//胖箭头方法//普通方法fun(){throw"error";}//普通方法fun(){throwException("error");}......
  • 安装好了calico,机器重启了,k8s异常nfs挂载报错
      节点没有装nfs-utils包吧,安装了依然报错。位于node02上的pod死活起不来,kubectldeletepod--all-nrbd-system把rainbond的pod都删了依然报错。node02上节点到......
  • 大爽Python入门教程 7-7 异常处理 try ... except Exception
    大爽Python入门公开课教案点击查看教程总目录1什么是异常Exception简单来讲,错误Error就是异常Exception。具体的,我们先来看几个错误。>>>2:3SyntaxError:illega......
  • 全局异常处理配置
    全局异常处理配置@ControllerAdvice//aoppublicclassGlobalExceptionHandler{@ExceptionHandler(Exception.class)@ResponseBodypublicResulter......
  • @Transactional失效:捕获异常未抛出
    失效场景:@Transactional(rollbackFor=Exception.class)publicMap<String,Object>saveEngineer(){Map<String,Object>map=Maps.newHashMap();......
  • 异常
    异常异常处理机制抛出异常捕获异常异常处理五个关键字try,catch,finally,throw,throws快捷方式:ctrl+alt+tpackagecom.zhang.oop.exception;importcom.sun.xml.i......
  • [kubernetes]Calico运行异常:dial tcp 10.96.0.1:443: connect: connection refused
    [kubernetes]Calico运行异常:dialtcp10.96.0.1:443:connect:connectionrefuseddingpwen于2022-04-2710:33:12发布5309收藏分类专栏:云原生web开发文章标签:ku......
  • 虎牙SRE谈可观测:如何做到比用户和老板更早发现业务异常?
    一分钟精华速览可观测能力是指在复杂的软件系统中能及时、准确感知到服务状态,特别是异常或故障的发生,确定异常的影响范围、异常部位边界、判定异常点位、并由相关人员或软......
  • 虎牙SRE谈可观测:如何做到比用户和老板更早发现业务异常?
    一分钟精华速览可观测能力是指在复杂的软件系统中能及时、准确感知到服务状态,特别是异常或故障的发生,确定异常的影响范围、异常部位边界、判定异常点位、并由相关人员或软......