当前位置:  技术问答>java相关

看看为什么(0,1,0)

    来源: 互联网  发布时间:2015-04-06

    本文导语:  class base { int x = 0; public void basedisp() { System.out.print("base:" + x); } } class test extends base { int x = 1; public void testdisp() { System.out.print("test:" + x); } } public class btxx { public static void main(String[] args) { b...

class base
{
int x = 0;
public void basedisp() {
System.out.print("base:" + x);
}
}

class test extends base
{
int x = 1;
public void testdisp() {
System.out.print("test:" + x);
}
}

public class btxx
{
public static void main(String[] args) {
base b = new base();
test t = new test();
b.basedisp();
t.testdisp();
b = t;
b.basedisp();
System.exit(0);
}
}

|
因为你的test 是base 的subclass,虽然你的int x 屏蔽了base的int x,但是你调用的是base 实例的basedisp(),所以它仍然输出的是base 的instance:b的x,所以仍然是0,但是如果你屏蔽的是方法,则可以得到你想要的效果。

|

当然了,basedisp()是父类方法

|
我帮你修改了,如下:
class Base
{
int x = 0;
public void disp() {
System.out.println("base:" + x);
}
}

class Test1 extends Base
{
    int x = 1;

    public void disp(){
       System.out.println("test1:" + this.x);
    }
}

public class Test
{
     public static void main(String[] args) {
       Base b = new Base();
       Test1 t = new Test1();
       b.disp();
       t.disp();
       b = t;
       b.disp();
       System.exit(0);
}



还有,类的名字应该大写,以示区别,关于编程风格的问题就不多说了,自己去看看书吧。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 简单!看看这个方法!简单!看看这个方法!
  • linux高手看看
  • 好消息,近来看看......
  • 我想看看有关Linux和Unix的源码,有什么好的建议
  • 想看看linux的内核源代码!从哪里开始!给点建议!!
  • 我初学JAVA,大家愿意交朋友的进来看看!留QQ的给分啊!
  • 关于全选的问题大家帮忙看看~
  • jsp论坛,大家快去看看,解决树形目录http://52jsp.126.com
  • 各位大侠,小侠,快过来看看。
  • 看过操作系统设计与实现的进来看看
  • 请进来看看!!
  • 想看看linux的内核源代码!从哪里开始!给点建议!! iis7站长之家
  • 大家去软件工程论坛里面去看看那,我发了700分的问题!!
  • 建议去这里看看,有好多基本的重要知识! 绝对值得一看!
  • 大家帮我看看,我好把贴子结了,里面有100分。。。。。。
  • 到 http://www.xbit2008.com 看看技术文章把! 我写的或从网上摘的!
  • 虚心请教问题,帮我看看好吗?
  • 我刚申请的域名rootsafe.com大家看看怎么样? up有分!
  • 帮我看看是不是被黑了?
  • 我的Solaris启动不了了,请帮忙看看


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3