Java基础
继承
1、定义:
- 子类可以直接访问父类中的非私有的变量和方法
- 子类不能直接访问父类,如果父类使用private修饰成员变量和方法
- 如果子类和父类的成员变量重名,那么会优先子类
- 子类无法继承父类的构造方法
2、super关键字
- super代表父类的存储空间标识,是父类的引用
- 如果出现重名,则可以通过super.成员变量明确访问父类的成员变量
- 可以通过this明确访问自己的成员变量
3、重写与重载的区别
- 重写是子类与父类方法名相同,返回值类 型、参数列表相同
- 重载是在同一个类中,同名的方法中,参数类型不同、参数个数不同、参数顺序不同
4、静态方法与非静态方法的区别
- 本质上的区别是:静态方法是在类中使用staitc修饰的方法,在类定义的时候已经被装载和分配。而非静态方法是不加static关键字的方法,在类定义时没有占用内存,只有在类被实例化成对象时,对象调用该方法才被分配内存。
- 静态方法中只能调用静态成员或者方法,不能调用非静态方法或者非静态成员,而非静态方法既可以调用静态成员或者方法又可以调用其他的非静态成员或者方法。
5、设计模式
回调模式:
- 接口回调:某方法的参数是接口类型,调用该方法时,需要创建并传递一个实现此接口类型的对象,运行时会调用参数对象中所实现的方法
- 步骤:创建回调接口、创建回调接口实现类、创建测试类并调用回调接口方法