当前位置: 技术问答>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);
}
}
{
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);
}
}
还有,类的名字应该大写,以示区别,关于编程风格的问题就不多说了,自己去看看书吧。
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.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。