Father f = new Son();Father f = new Daughter(); // 父类 引用类型变量(引用) 指向 子类的对象
Father f = new Son();
Person p = new Student(); Student s = (Student)p;GrandPa g = new Son();
// g(引用) 指向的类型为 Son 类型,所以可以强转为 Son 类型
Son s = (Son)g; // 引用所指向的对象就是该类型
// g(引用) 指向的类型为 Son 类型,所以可以强转为 Son 继承的 Father 类型
Father f = (Father) g; // 引用所指向的对象继承和该类或者实现类该接口
// 爷爷类
public class GrandPa { }
// 爸爸类
public class Father extends GrandPa{ }
// 儿子类
public class Son extends Father{ }
ClassCastException 类型转换异常instanceof 关键字进行判断,判断引用指向的对象是否属于改类型何时需要强转:若想访问的变量、方法在超类中没有,则需要强转
重载是否是多态,网友们各执己见,这里我只是阐述下我对这个观点的说明,仅代表我自己
面向对象是以对象为核心来思考,解决问题的一种方式,它是 Java 核心的一种思想;
世间的万事万物我们都可以理解成一个对象,所以才有我们万物皆对象的说法。