java继承复习
package com.edison;public class ExtendAct {/** 先给父类成员变量分配内存空间,然后初始化父类构造方法,接着给子类成员变量分配内存空间,最后初始化子类构造方法 */public static void main(String[] args) {A b = new B();/** 2.父类的引用不能调用子类的属性或方法 */System.out.println("姓名" + b.name);System.out.println("b.setName()=" + b.setName());// System.out.println// ("年龄"+b.age);/*这里得不到b的age属性,因为父类引用指向子类对象时,父类的引用不能调用子类的属性或方法*/}}class A {/** 3.初始化类之前要先给成员变量分配内存空间 */String name = setName();String setName() {System.out.println("给父类name属性赋值");return "Parent";}/** 1.父类的引用不能调用子类的属性或方法 */public A() {System.out.println("父类构造方法");}}class B extends A {int age = setAge();public B() {System.out.println("子类构造方法");}int setAge() {System.out.println("给age属性赋值");return 15;}String setName() {System.out.println("给子类name属性赋值");return "aaa";}}