----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
注意:当内部类中定义了static成员 该内部类必须是static的
当外部类中的静态方法访问内部类的值 内部类也必须是静态的
]
内部类什么时候用 (人体重的脏器 身体 脏器 脏器有很多的行为和属性 )
类是描述事务的 事物的类部还有事物 该事物有内部类来描述 因为内部事物在使用外部事物的内容
私有属性不对外显示 不过可以通过函数来显示
内部类可以写在函数内依然可以访问外部属性
局部内部类是不能定义成static
****内部类定义在局部时不能被成员修饰符修饰 可以直接访问外部类的成员 因为还持有外部类中的引用
但是不可以访问它所在的局部中的变量 要修饰成final就可以了
!static没对象不执行
匿名内部类:“
- 匿名内部类其实就是内部类的简写格式
- 定义匿名内部类的前提: 内部类必须是继承一个类或者是实现接口
- 匿名内部类的格式 new 父类或者接口() {定义子类的内容--------要是转成了父类那子类中定义而父类中没有的 就不与执行}
- 其实匿名内部类就是一个匿名子类对象 而且这个对象有点胖 可以理解为代内容的对象
- 匿名内部类中定义的方法最好不要超过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学习型技术博客、期待与您交流! ----------------------
详情请查看: