java继承关系中成员变量,构造方法,成员方法的关系
1 Java继承中的成员关系 2 A:成员变量 3 a:子类的成员变量名称和父类中的成员变量名称不一样,这个太简单写那个名字就访问那个名字! 4 b:子类的成员变量名称和父类中的成员变量名称一样,这个怎么访问呢? 5 子类的方法访问变量的查找顺序: 6 在子类方法的局部范围找,有就使用。 7 在子类的成员范围找,有就使用。 8 在父类的成员范围找,有就使用。 9 找不到,就报错。 10 B:构造方法 11 a:子类的构造方法默认会去访问父类的无参构造方法,因为子类会继承父类中的数据,可能还会使用父类的数据。所以,子类初始化之前,一定要先完成父类数据的初始化。 12 是为了子类访问父类数据的初始化。---》 注意:子类每一个构造方法的第一条语句默认都是:super(); 调用父类无参构造。 13 b:父类中如果没有无参构造方法,怎么办?由于一个类在定义的时候系统默认给出无参构造,一旦我们给出了有参构造,那么午餐构造将不再给出,此时子类的构造方法将无法
的第一句默认super()将无法访问到无参构造无法为父类数据疾行初始化,因此导致报错。 14 子类通过super去明确调用带参构造,通过明确的调用指定的父类带参构造,为父类数据进行初始化。 15 子类通过this调用本身的其他构造,但是一定会有一个去访问了父类的构造,this(); 16 让父类提供无参构造,综上所述就是为了让父类先于子类数据进行初始化。 17 C:成员方法 18 a:子类的成员方法和父类中的成员方法名称不一样,这个太简单 19 b:子类的成员方法和父类中的成员方法名称一样,这个怎么访问呢? 20 通过子类对象访问一个方法的查找顺序: 21 在子类中找,有就使用 22 在父类中找,有就使用 23 找不到,就报错 24 (9)两个面试题: 25 A:Override和Overload的区别?Overload是否可以改变返回值类型? 26 B:this和super的区别和各自的作用? 27 (10)数据初始化的面试题 28 A:一个类的初始化过程 29 B:子父类的构造执行过程 30 C:分层初始化
1 1:方法重写和方法重载的区别?方法重载能改变返回值类型吗? 2 3 方法重写: 4 在子类中,出现和父类中一模一样的方法声明的现象。 5 6 方法重载: 7 同一个类中,出现的方法名相同,参数列表不同的现象。 8 9 10 方法重载能改变返回值类型,因为它和返回值类型无关。 11 12 13 Override:方法重写 14 Overload:方法重载 15 16 2:this关键字和super关键字分别代表什么?以及他们各自的使用场景和作用。 17 18 this:代表当前类的对象引用 19 super:代表父类存储空间的标识。(可以理解为父类的引用,通过这个东西可以访问父类的成员) 20 21 场景: 22 成员变量: 23 this.成员变量 24 super.成员变量 25 构造方法: 26 this(...) 27 super(...) 28 成员方法:
10:static关键字是什么?有什么特点?什么时候用呢? static静态的意思,可以修饰成员变量和成员方法。 特点: A:随着类的加载而加载 B:优先与对象存在 C:被所有对象共享 D:可以通过类名调用 什么时候用? A:当一个成员被所有对象共享的时候。 B:工具类的时候。 11:静态变量和成员变量的区别 A:所属不同 B:内存位置不同 C:生命周期不同 D:调用不同 12:main方法各种修饰符及参数的解释? public:权限修饰符,权限最大 static:可以不用创建对象 void:返回值给jvm无意义 main:一个方法名,大家都默认的 String[] args:接收键盘录入对象
Java继承中的成员关系A:成员变量a:子类的成员变量名称和父类中的成员变量名称不一样,这个太简单b:子类的成员变量名称和父类中的成员变量名称一样,这个怎么访问呢?子类的方法访问变量的查找顺序:在子类方法的局部范围找,有就使用。在子类的成员范围找,有就使用。在父类的成员范围找,有就使用。找不到,就报错。B:构造方法a:子类的构造方法默认会去访问父类的无参构造方法是为了子类访问父类数据的初始化b:父类中如果没有无参构造方法,怎么办?子类通过super去明确调用带参构造子类通过this调用本身的其他构造,但是一定会有一个去访问了父类的构造让父类提供无参构造C:成员方法a:子类的成员方法和父类中的成员方法名称不一样,这个太简单b:子类的成员方法和父类中的成员方法名称一样,这个怎么访问呢?通过子类对象访问一个方法的查找顺序:在子类中找,有就使用在父类中找,有就使用找不到,就报错(9)两个面试题:A:Override和Overload的区别?Overload是否可以改变返回值类型?B:this和super的区别和各自的作用?(10)数据初始化的面试题A:一个类的初始化过程B:子父类的构造执行过程C:分层初始化
开始在code,我的个人特色。