靠,你想蒙骗我啊!public void FatherClass(){
System.out.println("FatherClass Create");
}
System.out.println("FatherClass Create");
}
解决方案 »
- hibernate不去映射mysql字段?
- web service连接问题
- sqlserver 中时间段的比较
- AXIS2 和 AXIS1兼容问题
- 非常奇怪,tomcat装在c盘没问题,装其他盘就起不来了
- 从2,4,5,9中选三个数的和,能被3整除的有哪些?(求算法优化)
- struts validate 数据检验问题
- weblogic是什么,请指点一下!
- 一个很奇怪的问题:在myeclipse上用tomcat能运行,而ant build之后将war文件放到tomcat下却不能运行
- spring事务配置
- tomcat 启动是出现错误。
- 一个不知道什么原因的问题 有点难度 本来应显示为图片的 可确是乱码?????
public FatherClass(){
System.out.println("FatherClass Create");
}
^_^
public void FatherClass(){
System.out.println("FatherClass Create");
}
public void mA(){
System.out.println("C1.mA");
}
}class C2 extends C1{
public void mA(){
System.out.println("C2.mA");
}
}如果调用
C1 c = new C2();
c.mA();
会输出:C2.mA。之所以这样是建立在我们在写C2.mA的时候假设我们已经知道C1.mA已经存在的基础之上的,如果我们已经定义了C2(这时的C1没有C1.mA而我们定义了C2.mA),再回头来修改C1,而且我们不知道有C2.mA存在,并且给C1增加了C1.mA。大家试想一下是不是会无缘无故的违背了我们的意图(就是说没有任何错误提示)?所以现在OO的新特色——C#就更改了这一点。如果按上述的写法,将输出:C1.mA。注意,千万不要说什么这有违背多态,有override和hide的区别对多态来说更加方便了,更加没有罪了。如果你以前没有这种认识,你认为是吗?^_^
class C{private C(){}}