1. 面向对象三大特性:封装,继承,多态。
1)封装,私有类 private, 构造方法,get/set,toString。
2) 继承,关键字 extends, 子类继承父类,子类自动继承到父类所有的非private的成员,子类重写父类的方法, @Override 。
3)多态:父类引用指向子类实例,凡是可以存储父类的容器或者变量,一定可以存储子类。
2 . 重载和重写的区别:
1)重载,方法名一样,参数不用,有多个方法。
2)重写,前提是必须存在继承关系或者实现接口,同一个方法。
3 .类和对象:类是对象引用,对象是类的实例。
1)创建对象,new 类名();
2)this 关键字,默认指的是当前类的对象,this.成员 。
3)static ,静态,修饰成员属性、方法,属于类不属于对象,类.静态成员。
4)abstract,抽象,可以修饰方法或者类;抽象类不一样有抽象方法,但有抽象方法的一定是抽象类。子类继承了抽象类就必须重写父类的所有重写方法,特例(子类也是抽象类);
5)接口,interface,属性 :public static final ,final必须为常量,必须设置初始值,一旦设定,后续不得改变。接口中只能有抽象方法,子类实现接口,必须重写接口所有的方法。
默认方法: default ,静态方法:static
4 . 类型转换:子类转父类,自动类型转换,父类转子类,强制类型转换。
5 . 包装类: int --- Integer , char---Character。
6 .异常 Exception ,包括运行时异常,编译时异常。处理异常的方法,try catch,throws。
7 .集合 :Collection接口
1)List 集合 :有序可以重复。
2)ArrayList 与LinkedList区别 :ArrayList 底层是数组,LinkedList底层是双链表。
3)Vector: 线程安全。
4)Set集合:去重。
5)HashSet:无序,没有get/set方法,底层是数组+链表+红黑树。
6)TreeSet:有序。
8 . 遍历
1)fori循环,foreach循环,迭代器Iterator ,ListIterator