黑马程序员 随笔3

本文详细解析了内部类的使用场景、作用以及注意事项,包括何时使用内部类、内部类与外部类的关系、私有属性的访问、局部内部类与匿名内部类的定义与应用,同时介绍了异常处理机制中的try-catch-finally语句和多异常处理策略,最后讨论了自定义异常的实现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


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

注意:当内部类中定义了static成员 该内部类必须是static的
当外部类中的静态方法访问内部类的值 内部类也必须是静态的
]
内部类什么时候用  (人体重的脏器 身体 脏器  脏器有很多的行为和属性 )
类是描述事务的 事物的类部还有事物 该事物有内部类来描述 因为内部事物在使用外部事物的内容

私有属性不对外显示 不过可以通过函数来显示

内部类可以写在函数内依然可以访问外部属性 

局部内部类是不能定义成static
****内部类定义在局部时不能被成员修饰符修饰 可以直接访问外部类的成员 因为还持有外部类中的引用
但是不可以访问它所在的局部中的变量 要修饰成final就可以了
!static没对象不执行

匿名内部类:“
  1.  匿名内部类其实就是内部类的简写格式
  2. 定义匿名内部类的前提:  内部类必须是继承一个类或者是实现接口
  3. 匿名内部类的格式  new 父类或者接口() {定义子类的内容--------要是转成了父类那子类中定义而父类中没有的 就不与执行}
  4. 其实匿名内部类就是一个匿名子类对象 而且这个对象有点胖 可以理解为代内容的对象
  5. 匿名内部类中定义的方法最好不要超过3个
A a=new A();这个是new对象 实例化
A a=new A(){这里复写方法};  这个是继承 或实现的简写格式

异常处理
java 提供了特有的语句进行处理 
try{
需要被检测的代码块
}catch(异常类 变量)
{
处理异常的代码 
}finally{
一定会执行的语句
}
jvm默认的异常处理机制 就是在调用printStackTrace()  打印异常跟踪信息

throws
在功能上通过throws关键字声明了功能又肯能会出现问题

多异常处理 : 定义函数的时候又可能会发生多个问题 
声明异常时 建议声明更为具体的异常  这样处理的可以更具体
对方声明几个异常 就对应有几个catch块  不要定义多余的catch块
如果多个catch块重的异常出现继承关系 父类异常catch放在最下面  

建议在进行catch处理时 catch中一定要定义具体的处理方式 
不要简单的定义一句e.printStackTrace() 以及打印一行错误信息    用户看不懂啊

自定义异常
因为项目中会出现特有的问题而这些问题并未对java所描述  这些特有的问题可以按照java的对问题封装的思想 将特有的问题 进行自定义的异常封装

当在函数内部出现了thow抛出异常对象 那么久必须要给对应的处理动作  要么在类部 try catch处理  
要么在函数上声明 要么让调用者处理 
一般情况下  函数内出现异常 函数上需要声明
继承Exception原因:
异常体系有一个特点  因为异常类和异常对象都被抛出
他们都具备可抛性  这个可抛性是Throwable这个体系中独有特点

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

详情请查看:http://edu.youkuaiyun.com/heima


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值