第六天内部类与异常以及包的介绍



1. Object类
   |-- equals,建立对象自己独特的比较方式,不在是比较对象地址值
       需要子类覆盖equals方法
   |-- finalize,虚拟机回收堆中的对象垃圾的时候,调用该对象的finalize方法
   |-- hashCode,方法,返回int值,对象在堆中的地址,通过这个方法计算出来的
   |-- toString,方法,返回了对象的字符串表现形式 ,类名@哈希值
       需要子类覆盖toString方法,实现自己独特的字符串表现形式


2. 内部类
   |-- 类中类,嵌套类
   |-- 调用内部类中的函数 ,非静态
      格式 外部类名.内部类名 变量 = new 外部类对象().new 内部类对象();
   |-- 调用内部类中的函数,内部类静态 ,函数非静态
      格式 外部类名.内部类名 变量 = new 外部类名.内部类对象();
   |-- 调用内部类中的函数,全部是静态
      格式 外部类名.内部类名.函数名()


   |-- 内部类中,访问外部类成员变量 外部类名.this.变量名  非静态
   |-- 内部类中,访问外部类成员变量 外部类名.变量名  静态


   |-- 内部类,定义在局部,写在了外部类的函数中,内部类中的函数,访问外部类函数中的变量
       这个变量需要加 final 因为生命周期


3. 匿名内部类
   |-- 继承一个类,或者实现接口
     格式:
        new 接口()
{
  覆写,接口中的抽象方法
}.接口中的方法;


接口 变量 = new 接口()
{
  覆写接口中的抽象方法
  覆写接口中的抽象方法
};
变量.函数();
变量.函数();


4. 异常
    |-- 异常的面向对象思想
      java将异常都封装成了对象
    
    |--异常体系:
       Throwable
          Exception
   小问题,可处理
 Error
   大问题,必须修改代码


5. 异常的处理方式
    try{
      //可能发生异常的代码
    }catch(异常类 变量){
     // 处理方式
    }


6. 打印异常信息的3个常用方式
   |--getMessage();
   |--toString();
   |--printStackTrace() ;


7. 异常的第二种处理方式 抛出异常(********面试)
   |-- throw
   |-- throws


8. 编译时期异常和运行时期异常
   |-- 调用了抛异常的方法,调用者没有处理异常
   |-- 运行时期异常对象描述 RuntimeException 和他的子类
   |-- 这个异常,在运行时期抛出,不需要在函数上声明,也不需要处理
   |-- 运行时期异常,一旦出现,程序停止运行,修改源代码


9. 自定义异常
   |-- java中,没有完全描述所有的异常,有的异常是java没有描述的,需要自定义异常
   |-- 继承Exception 或者 继承RuntimeException
   |-- 调用父类构造方法,传递异常信息
 *****************************************************************************************************
 包:
   |-- 分类管理类文件
   |-- 提供多层命名空间
   |-- package
   |-- 就是文件夹


1. 包与包之间类的访问
   |-- public protected default private
   
2. import 关键字
   |-- 导入类
   |-- 需要子包中的类,导入到子包


3. jar
   |-- jar -cvf 文件名.jar  包
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值