1、接口
1.1 为了克服单继承性,引用了JAVA
1.2 接口声明
public interface Printable { //接口声明//接口体final int Max = 100;void add();float sum(float x,float y); }
1.3 接口定义与类定义的区别
成员变量部分:接口中只能定义常量
- 每个成员都是默认 public static final 无法改变
- 也正因为如此,上述关键字可以省略
方法部分:接口中只能定义抽象方法
- 每个方法默认 public abstract
- 也正因为如此,上述关键字可以省略
1.4 接口和抽象类的比较
- 接口和抽象类只可以有抽象方法
- 接口中可以只有常量,不能有变量;而抽象类中两者都可以有
- 接口中只能有抽象方法,而抽象类中也可以有非抽象方法
- 使用抽象类和使用接口的一般原则
- 需要继承父类的非抽象特性,use抽象类
- 仅仅在多个类中实现某些公共方法,用接口
1.5 接口的使用
- 类通过使用关键字implements声明使用一个或多个接口;
- 多个接口之间用逗号隔开。如: class A implements Printable,Addable
- 如果一个类使用了某个接口,那么必须实现该接口的所有方法,否则,该类必须是抽象类
- 注意:实现接口方法时,必须加上public
1.6 接口的理解
- 接口的思想在于:可以定义很多类都需要实现的功能,而且不要求这些类之间有继承关系
- 同一个类也可以实现多个接口。接口只关心功能,并不关心功能的具体实现
- 接口存在的意义
- 实现“多继承”且避免了传统“多继承”的复杂性
- 建立类和类之间的协议
- 不考虑继承层次的问题
- 可以实现不同类之间的常量共享
- 允许在看起来不相干的对象之间定义共同行为
1.7 接口回调
1.8 实例
2、内部类
3、匿名类
4、异常类
4.1 定义
- 所谓异常就是指程序运行时可能出现的一些错误,例如数组越界、除零等。
- 出现异常时,JVM就用异常类Exception的相应子类创建一个异常对象,并等待处理。例如:读取一个不存在的文件时,会产生一个 IOException对象。
public String getMessage() //异常类的消息 public void printStackTrace() //错误方法栈 public String toString() //异常类的描述
- Java预定义的一些常见异常 – ArithmeticException:
ArithmeticException:整数除法中除数为0 NullPointerException:访问的对象还没有实例化 NegativeArraySizeException :创建数组时元素个数是负数 ArrayIndexOutOfBoundsException:访问数组元素时,数组下标越界 ArrayStoreException:程序试图向数组中存取错误类型的数据 FileNotFoundException:试图存取一个并不存在的文件 IOException:通常的I/O错误
4.2 java的异常处理
4.3 举例
5、Class类
6.反编译和文档生成器