zoukankan      html  css  js  c++  java
  • try catch自定义异常类的使用

     1 <?php
     2 //定义一个学生类
     3 class Student{
     4      //学生的名字
     5      private $name;
     6      //学生的年龄
     7      private $age;
     8 
     9   public function __construct($name,$age){
    10 
    11        $this->setName($name);
    12        $this->setAge($age);
    13   }
    14   public function setName($name){
    15         $this->name=$name;
    16   }
    17   public function setAge($age){
    18         if(is_int($age)&&$age>18&&$age<25){
    19          $this->age=$age;
    20         }else{ 
    21          //抛出一个异常并记录是哪个学生出错             
    22          throw new StudentException($this,$this->name.'年龄出错',333);
    23         }
    24     }
    25 
    26 }
    27 //自定义一个学生异常类,
    28 //到时候清楚是哪个学生发生异常
    29 class StudentException extends Exception{
    30  
    31     protected $student;
    32 
    33  //我们需要重写父类的构造方法
    34  public function __construct($stu,$message,$code){
    35 //记录下学生信息
    36     $this->student=$stu;
    37 
    38   //上面的容易理解
    39 //  $this->message=$message;
    40 //  $this->code=$code;
    41 
    42 //问题有些疑惑关于这里
    43 //我是这样理解代码的:重写父类的构造方法并没有得到父类值,这时候我们需要初始化父类的构造方法
    44    parent::__construct($message,$code);
    45  }
    46  public function getStudent(){
    47        
    48        return $this->student;
    49 
    50      }
    51 }
    52 //监视所有的学生,如果有学生信息错误就返回相应信息
    53 try{
    54       $student1=new Student('aaa',21);
    55       $student2=new Student('bbb',23);
    56       $student3=new Student('ccc',19);
    57       $student4=new Student('ddd',28);
    58 
    59 }
    60 catch(StudentException $e){
    61       echo "<pre>";
    62       //获取发生错误学生的全部信息
    63       var_dump($e->getStudent());
    64       echo "发生的错误消息:".$e->getMessage();
    65 }
    66 ?>
    一萧一剑走江湖,一笑一乐看世界,一切美好的事物我们都需要去用心感受,聆听自然给予我们的欢乐. 小时候觉得长大了多好,可以到外面的世界看一看,可长大了,却向往童年般的生活,没有烦恼,该哭的时候哭,该笑的时候笑,想做什么都可以.即便我们长大了更应该热爱生活懂得爱自己,不要抱怨生活对你的不公,开心的活着比什么都好。 所以在这个有限的时间里,我们需要快乐高兴的活着,活出属于自己的青春.忘记那些不痛快的事情.我们需要梦想来使得我们的人生更有意义. 今天就分享到这里吧,大家可以叫我一萧,可能在以后的日子里,我分享的不仅仅是代码上的事情,因为能让我们感到快乐和高兴并且获得收获的不仅仅是技术层面上的,应该有很多很多
  • 相关阅读:
    [转] Java的打包apk, jar、war、ear包
    查看网络端口
    adb删除系统软件
    打开大文件的方法
    转载:Adb远程连接Android系统(通过网络使用ADB(Connect to android with wifi))
    网站后台语言(笔记)
    mysql和mysqli使用笔记
    Data Management Technology(5) -- Recovery
    Data Management Technology(4) -- 关系数据库理论
    Data Management Technology(3) -- SQL
  • 原文地址:https://www.cnblogs.com/ylmfg/p/5479638.html
Copyright © 2011-2022 走看看