7. 类与对象3

1 instanceof

用于判定 对象是否是 某个类的实例

场景: 类型转换时,防止异常

		// 一个对象是否是某个类的实例
		A a = new A();
		if (a instanceof B) {
			B b = (B) a;
		}
		System.out.println(a instanceof A);
		System.out.println(a instanceof Object);

2 super关键字

super.****: 掉用父类的 属性,方法 (没有父类对象)

super(): 调用父类构造

3. 重写: 覆盖: override :: (重载 overload)

覆盖发生在 继承的时候!

方法名相同,参数列表相同,返回值相同 , 权限访问修饰符可以变大

4. 多态

语义: 一种事务多种形态。

美女抱猫

美女抱波斯猫

美女抱橘猫

代码: 变量是 父类类型 , 真实对象是子类类型。 运行时调用的时 子类覆盖的方法 :: 编译 是父类型, 运行时子类型(运行时才知道是谁)

父类 变量 = new  子类();
变量.方法(); // 覆盖的方法,运行的是子类的方法

有类型的地方就可以用多态

例如: 属性, 参数, 返回值都可以。 (具体看代码)

`

7. 类与对象3

上一篇:类型比较运算符 instanceof 与 多态 类型转换的一些现象


下一篇:多态 instanceof关键字 final关键字 向下转型