黑马程序员——异常和包的访问权限范围

                                    ------- android培训java培训、期待与您交流! ----------

异常:
问题也是现实生活中一个具体事物也可以通过Java类的形式描述,并进行封装。其实就是Java对不正常问题的描述的对象体现。
      严重问题,Java通过error类进行描述。对于error一般不编写代码进行处理。
      对于非严重问题,java通过Exception进行针对处理。
      
无论是Error还是Exception都具有共性,所以向上抽取。
他们就会有一个父类 Throwable
|--------Error
|--------Excepiton


异常处理  
   Java提供了特有的语句异常处理
try{
需要被检测点代码;
}catch(异常类 变量){
处理异常的代码;(处理方式)
}finally{
一定会被执行的语句:(比如关闭)
}
获取异常的信息 getMessage();


处理异常的方式:
1、通过throws 声明式抛出异常。
2、通过try catch自己捕捉处理。




自定义异常:
   如果自定义异常信息?因为父类已经把异常信息的操作都做完了。
   所以子类直接通过super(message)就可以调用父类的构造方法。
  
  自定义异常继承Exception的原因,只有继承Exception才可以使用throws 和  throw关键字。
  
  
throws和throw的区别
throws使用在函数上面,不是函数体里面。
throw使用在函数内部


throws后面跟的是异常类,可以跟多个。
throw后面跟的一个异常对。


RuntimeException运行时异常。
如果在函数内抛出了这种类型的异常,函数上面可以不声明,也可以编译通过。
如果在函数上面声明了该异常,调用者可以不用进行异常和处理,也可以编译通过。


之所以不用函数声明,是因为不需要让调用者处理,但该异常发生,希望程序停止。因为在运行时
出现了无法继续运算的情况,程序必须停止。对代码进行修改。


如果发生自定义异常,无法再继续进行运算,就让自定义异常继承runtimeExcepiton、、


finally有一直方法不支持 System.exit(0);


子类覆盖父类的时候,
1、子类抛出的异常只能是父类异常的子类或者子集
2、如果父类或着接口没有抛出异常,那么子类就必须try catch异常 而不能直接抛出异常。


包-----package
1、对类文件进行分类管理。
2、给类提供多层次命名空间。
3、写在程序文件的第一行。
4、类名的全称是 包名.类名。
5、包也是一种封装。


包的总结
  包与包之间进行访问,被访问的包中的类以及类的成员,需要public修饰。
  不同包的子类还可以直接访问父类中被protected权限修饰的成员。
  包与包之间只有两种权限  public  protected(子类访问父类)
  
  
  
  public   protected  default  private
同一个类中  yes        yes   yes    yes
同一个包中  yes        yes       yes       no
子类  yes     yes no no
不同包中  yes  no no     no

转载于:https://my.oschina.net/u/158350/blog/106792

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值