Obeject:所有类的父类
该类中的方法:
.equals:==是判断两个变量或实例是不是指向同一个内存空间的
equals是是判断两个变量或实例所指的内容空间的值是不是相同的
(除了String和封装器,equals和“==”没有区别,String和封装器重写了equals()方法,所以在这里面像上面判断方法所示)
toString
内部类的访问规则:
1.内部类可以直接访问外部类中的成员,包括私有成员
2.外部类需要访问内部类,必须建立内部类对象
访问格式:
1.外部类名.内部类名 变量名 = 外部类名.内部类名
例:Outer.Inter in = new Outer() . new Inter();
2.内部类在成员位置上,就可以被成员修饰符所修饰 private static
注意:内部类中定义了静态成员,该内部类必须为静态。
当描述事物时,事物的内部还有事物,该事物用内部类来描述。
因为内部类在使用外部事物的内容。
匿名内部类:
1.匿名内部类其实就是内部类的简写格式
2.定义匿名内部类的前提:内部类必须是继承一个类或者实现接口
3.匿名内部类格式: new 父类名或接口名 { 定义子类的内容 }
4.其实匿名内部类就是一个匿名子类的对象
异常:程序在运行时出现不正常情况(把问题进行描述,并封装成对象)
异常的由来:java 对不正常情况进行描述后的对象体现。
异常的两种:1. Error:一般不编写针对性的代码对其进行处理
2.Exception:可以使用针对代码的处理方式进行处理
异常处理格式:
try
{
需要检测的方法
}
catch
{
处理异常的代码(处理方式)
}
finally
{
一定执行的语句
}
对异常的处:
1.声明异常时,建议声音异常为更精确更具体的异常,这样处理可以更具体
2.对于声明几个异常,就对应有几个 catch 块。
如果多个 catch 块的异常具有继承关系,父类异常 catch 块放在最下面。
throws和throw的区别:
1.throws使用在函数上;throw使用在函数内
2.throws后面跟的异常类,可以跟多个,用逗号隔开;throw后面跟的是异常对象
Exception中有一个特殊的子类异常RuntimeException运行时异常。
如果在函数内容抛出该异常,函数上可以不用声明,编译一样通过。
如果在函数上声明了该异常,调用者可以不用进行处理,编译一样通过。
因为今天开始放假,同学们都陆陆续续的走了,回家的回家,出去旅游的出去旅游,自己几个在宿舍感觉好怪。羡慕嫉妒恨啊,所以看视频有点心不在焉。所以接下来我把视频中终结记下来:
异常:
是什么?是对问题的描述,将问题进行对象的封装。
异常体系:
Throwable
|——Error
|——Exception
|——RuntimeException
异常体系的特点:异常体系中所有的类以及建立的对象都具备可执行性。
也就是说可以被 throw 和 throws 关键字所操作
只有异常体系具备这个特点。
当函数内同有 throw 抛出异常对象,并未进行 cry 处理。必须在函数上声明,不然编译失败。
注意,RuntimeException 除外,也就是说,函数内如果抛出的 RuntimeException 异常,函数上可以不用声明。
如果函数声明了异常,调用者需要进一步处理,处理方法可以 throw 可以 try 。
异常有两种:
1.编译时被检测异常:
该异常在编译时,如果没有处理(没有抛出没有 try),编译失败
该异常被标识,代表这个可以处理。
2运行时异常(编译时不检测)
在编译时,不需要处理,编译器不检测
该异常的发生,建议不处理,让程序停止,需要对代码进行修正
finally 中定义的通常是关闭资源代码,因为资源必须释放。
异常的足以事项:在子类覆盖时:
1.子类抛出异常必须是父类的异常的子类或者子集
2.如果父类或者接口中没有异常抛出时,子类覆盖出现异常,只能 cry不能抛。
眼睛疼,不写了。。。