62,623
社区成员
发帖
与我相关
我的任务
分享class A
{
int i=10;
static void show()
{
System.out.println("show() in A");
}
void show1()
{
System.out.println("show1() in A");
}
}
class B extends A
{
static int i=20;
static void show()
{
System.out.println("show() in B ");
}
}
class C extends A
{
int i=30;
void show1()
{
System.out.println("show1() in c");
}
}
class TestStatic
{
public static void main(String[] args)
{
A aa=new B();
A ab=new C();
aa.show();
aa.show1(); //1
ab.show();
ab.show1(); //2
}
}
class A
{
int i=10;
static int j =10;
static int n=11;
static void show()
{
System.out.println("show() in A");
}
void show1()
{
System.out.println("show1() in A");
}
}
class B extends A
{
static int i=20;
static void show()
{
System.out.println("show() in B ");
}
}
class C extends A
{
int i=30;
int j=2;
static int n=23;
void show1()
{
System.out.println("show1() in c");
}
}
public class Test3
{
public static void main(String[] args)
{
A aa=new B();
A ab=new C();
C cc=new C();
aa.show(); //A类的方法
aa.show1(); //A类的方法
ab.show();//A类的方法
System.out.println(cc.n);//可以看出static变量n被被隐藏了
System.out.println(ab.n);//可以看出static变量j并没有被隐藏
System.out.println(ab.j);//可以看出static变量j并没有被隐藏
ab.show1(); //2执行时调用C类的方法
}
}class TestStatic//把楼主的主类改成这样,你运行看看是不是被重写了.
{
public static void main(String[] args)
{
A aa=new B();
A ab=new C();
B.show();
aa.show1(); //1
C.show();
ab.show1(); //2
}
}
class A
{
static void show()
{
System.out.println("show() in A");
}
}
class B extends A
{
static void show()
{
System.out.println("show() in B ");
}
}