1.如果某类的构造函数是private的那么该类是不可以被继承的
//将发生错误
class B extends A
{
}
class A
{
private A(){}
}
2.如果某类中的方法是static的,那么该方法在子类中不能被覆盖override
只能被隐藏hidden..
如
class A
{
public static void test(){System.out.println("A");};
}
class B extends A
{
public static void test(){System.out.println("B");}
}
public class Test
{
public static void main(String []args)
{
((A)new B()).test();//输出A
}
}
而如果:
class A
{
public void test(){System.out.println("A");};
}
class B extends A
{
public void test(){System.out.println("B");}
}
public class Test
{
public static void main(String []args)
{
((A)new B()).test();//输出B
}
}
//将发生错误
class B extends A
{
}
class A
{
private A(){}
}
2.如果某类中的方法是static的,那么该方法在子类中不能被覆盖override
只能被隐藏hidden..
如
class A
{
public static void test(){System.out.println("A");};
}
class B extends A
{
public static void test(){System.out.println("B");}
}
public class Test
{
public static void main(String []args)
{
((A)new B()).test();//输出A
}
}
而如果:
class A
{
public void test(){System.out.println("A");};
}
class B extends A
{
public void test(){System.out.println("B");}
}
public class Test
{
public static void main(String []args)
{
((A)new B()).test();//输出B
}
}