黑马程序员_day12_包,权限

----------- android培训java培训、java学习型技术博客、期待与您交流! ------------

fianlly

{

//一定会被执行的代码。

//主要用于释放资源。无论是否发生异常,有些动作一定要执行,那么这些动作定义在finally代码块中。 

}

在进行异常捕捉时,代码块的不同组合情况。

1try catch finally

2try catch //没有需要一定被执行的代码-不需要关闭资源的动作。

3try finally。异常并没有被处理。但是确涉及到了资源的调用,资源需要被关闭。

所以就有了,将异常进行对外声明,因为没有catch,但是资源是在功能内部打开的,

必须要功能内部关闭。 就有了try finally的组合。 

异常覆盖中的细节:

1,

子类在覆盖父类时,如果父类中被覆盖的方法抛出了异常,

那么子类覆盖的方法,只能抛出相同的异常,或者该异常的子类。

2,

如果父类的被覆盖方法抛出了多个异常,子类在覆盖时,只能

抛出这些异常的子集。

3,

如果被覆盖的方法没有抛出异常,

子类也不允许抛出异常。如果子类中真的出现异常,只能在子类方法内进行try处理,绝对不允许throws声明。

万一处理不了呢?你可以选择抛出运行时异常。

包:

定义包用关键字package 包名都是小写字母组成。

包的作用:

1,对类进行分类管理。

2,对类提供了多层名称空间。

包的体现形式就是文件夹。 

包名.类名 才是类的全名称。 

包与包之间的类的访问。

被访问的包中的类以及类中的成员必须被public修饰.

当包与包之间的类存在着继承时,

父类给不同包的子类提供了一个特殊的直接访问权限,保护权限protected

不同包之间有两种权限可以用。

publicprotected(局限性,只给不同包的子类提供使用)

Public     当前类  当前包  子孙类  不同包

Protected   当前类  当前包 子孙类(也可以是不同包中的子孙类)

Private    当前类

问题:有了包,类名变的很长,写起来非常麻烦。

解决办法:通过一个关键字来完成 import : 导入

import的出现,是为了简化类名的书写。

如果用到一个包中的多个类。可以使用通配符:* 

记住:实际开发中,建议,用到哪个类,就导入哪个类。尽量不要写 * .

packa\DemoA.class

     \abc\HaHa.class

import packa.*;//指的是packa目录下当前所有class类。不包括子包中的HaHa.class

如果要用到HaHa.class 

需要这样导入:

import packa.abc.*;导入abc子包中的类。

当两个不同的包中出现了同名的类时,一定要用包名进行区分。

使用时,一定要写全类名,包名.类名

----------- android培训java培训、java学习型技术博客、期待与您交流! ------------

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值