能够使用static修饰成员变量 格式: static 数据类型 变量名 使用: 类名.变量名 特点: 变量被该类的所有对象共享
-
static修饰成员方法格式: publi static 返回值类型 方法名 (形参) {}使用: 类名.方法名(实参)
-
static修饰静态代码块 格式: static {}位置: 类中方法外执行: 加载类时执行,只执行一次,执行优先度高于类的其他成员
-
接口的定义格式格式: public interface 接口名 {接口成员}
-
接口的实现格式格式: public interface 接口名 {接口成员}
-
单实现:public class 类名 implements 接口名 {}
-
多实现:public class 类名 implements 接口名1,接口名2,接口名3... {}
-
先继承后实现:public class 类名 extend 父类名 implements 接口名 {}
-
只能先继承后实现,否则会报错
-
接口中的成员特点接口中的常量: 由接口名.常量名直接调用,也可以被实现类继承
-
接口中的抽象方法: 供实现类重写接口中的默认方法: 供实现类直接继承调用或重写调用
-
接口中的静态方法: 只能接口名.方法名调用,不能被继承接口中的私有方法: 只能接口内部直接调用,不能被外界继承或调用
-
多态的前提继承/实现父类变量指向子类对象,或者接口变量指向实现类对象、方法重写
-
多态的格式父类名 变量名 = new 子类名(实参);
-
多态向上转型和向下转型 向上转型: 父类名 变量名 = new 子类名(实参)实现多态
-
向下转型: 子类名 变量名 = (子类名)父类变量名;为了解决多态时父类变量不能调用子类的方法和成员的弊端
-
注意: 如果向下转型中子类名与父类变量指向的子类不是同一类,就会出现类型转换异常ClassCastException
-
避免转型异常:变量名 instanceof 数据类型
-
内部类概念 在类的里面又定义一个内,里面的内就叫内部类,外面的类叫外部类
-
匿名内部类的编写格式本质: 类的子类对象或接口的实现类对象格式:类名 变量名 = new 类名(){}; 接口名 变量名 = new 接口名(){};