本帖最后由 一木榜公 于 2013-7-13 13:05 编辑
- <P>abstract class Person//父类定义age和name和抽象方法
- {
- int age;
- String name;
- Person (int age,String name)
- {
- this.age = age;
- this.name = name;
- }
- public abstract void SayHello ();
- }
- class Chinese extends Person //子类继承父类,构造函数向上走,定义age于name实现父类抽象方法
- {
- Chinese (int age,String name)
- {
- super(age,name);
- }
- public void SayHello ()
- {
- System.out.println("我是"+name+",我的年龄是"+age+"."); //编译出现错误
- }
- }
- class Test1
- {
- public static void main(String[] args)
- {
- Chinese One = new Chinese (18,"王麻子"); //初始化One的age为18,name为“王麻子”
- One.SayHello();
- }
- }
- //为什么会这样,能不能稍微改动下,使程序能通过编译
- // name ,age 在父类中private私有,只能在本类中访问有效,把private去掉编译就能通过</P>
- <P>//<FONT size=4>如果子父类中出现非私有的同名成员变量时,子类要访问本类中的变量,用this;子类要访问父类中的同名变量,用super。</FONT></P>
- <P> </P>
复制代码 |