首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

子类变量覆盖父类变量,子类调用父类方法的有关问题

2012-11-16 
子类变量覆盖父类变量,子类调用父类方法的问题有那么个父类和子类:Base.java:--------------Java codepubl

子类变量覆盖父类变量,子类调用父类方法的问题
有那么个父类和子类:

Base.java:
--------------

Java code
public class Base {    public String str = "base";        public void print() {        System.out.println(str);    }}


Sub.java:
---------------
Java code
public class Sub extends Base {    public String str = "sub";        public void myPrint() {        super.print();    }}


Test.java:
---------------
public class Test {
public static void main(String[] args) {
Sub sub = new Sub();
sub.myPrint(); //这里输出"base",我是希望输出"sub"的 .......

子类不是应该覆盖父类的同名属性吗?

[解决办法]
属性,没有多态一说。只有方法才有override,才有覆盖,才有重写,才有多态
[解决办法]
属性的引用不存在多态
[解决办法]
Java code
public class Base {    public String str = "base";        public void print() {        System.out.println(getStr());    }        public String getStr() {        return str;    }}public class Sub extends Base {    public String str = "sub";        public void myPrint() {        super.print();    }        public String getStr() {        return str;    }} 

热点排行