1. 接口中可以定义内部类,默认使用 public static 修饰,就是说接口内部类只能是静态内部类。
2. 接口中可以定义内部接口,内部接口是接口的成员。(尽管这样做没有意义,实际开发中也很少见到这种应用场景)。
3. DMA:Direct Memory Access (直接存储器访问)
4. 代码块如果有修饰符,只能是static。而且代码块中可以有输出语句。非静态代码块每创建一次对象就会被加载一次,而静态代码块随着类被加载,而且只加载一次。静态代码块中只能操作静态的结构(类属性、类方法)。
5. 属性赋值的先后顺序:①默认的初始化②显式初始化或代码块初始化(此处两个结构按照顺序执行)③构造器④通过set函数赋值
6. 常量一旦被赋值,不可再赋值,习惯上用大写字母表示,常量不能使用默认初始化,可以①显式赋值②代码块赋值③构造器赋值(若有多个构造器,则每一个构造器都要给常量赋值)
7. 方法中的形式参数也可以用 final 修饰,用 final 修饰的形参在方法体内部不能被修改!(形参可用final修饰)
8. 抽象类不可以被实例化,但构造器还是有的,自己不能用可以给子类调用啊,对象实例化过程是一定要往上层调用到Object类构造器才算完整。(凡是类都有构造器)
9. 抽象类中的抽象方法的定义:public abstract void method(),其中的abstract不能省略,此处一定要区分与接口方法的定义:接口中的方法定义可以省略为void wal();
10. 抽象类中也可以没有抽象方法。接口是与类并行的一个概念,也可以看成是一个特殊的抽象类,接口是抽象类和常量值的集合。接口没有构造器,接口定义的是一种功能,此功能可以被类所实现。
11. 接口与接口之间也可以用extends继承,而且可以实现多继承!!!!!!!
12. Class.forName( )的作用?
①把类加载到JVM虚拟机②返回一个Class对象③执行类的静态代码段
13. 堆排序不能用链表,快速排序、归并排序、基数排序、插入排序都可以用链表,且插入排序用链表比数组快。
14、Spring依赖注入的方式:①接口注入②setter注入③构造方法注入。