class Base {
public static void test() {
System.out.println("Base test");
}
}public class T extends Base {
public static void test() {
System.out.println("T test");
} public static void main(String[] args) {
System.out.println(-0.0 == 0.0); // 问题1
Base b = new T();
b.test(); // 问题2
}
}
public static void test() {
System.out.println("Base test");
}
}public class T extends Base {
public static void test() {
System.out.println("T test");
} public static void main(String[] args) {
System.out.println(-0.0 == 0.0); // 问题1
Base b = new T();
b.test(); // 问题2
}
}
楼主【tteesstt】截止到2008-07-15 13:25:00的历史汇总数据(不包括此帖):
发帖的总数量:108 发帖的总分数:6900 每贴平均分数:63
回帖的总数量:75 得分贴总数量:8 回帖的得分率:10%
结贴的总数量:108 结贴的总分数:6900
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:0.00 % 无满意结分率:0.00 %
敬礼!
第二个Base test ,因为静态方法属于类而不是对象,所以没有重定义的说法
汗
negativeZero.equals(-0.0); //结果是?
negativeZero.equals( 0.0); //结果是?
System.out.println(Math.signum(1.2));
System.out.println(Math.signum(-0.2)); 又如何呢
但是声明b的时候是用的Base类,
而静态方法是属于类的,所以b.test()调用的是Base类的静态方法,
不过我也不是很懂,之前没想过这个问题,
T类的test()方法应该是一个和Base类里test方法没任何关系的吧,
只是两个名字相同而已?
true
Base test
第一个就不用说了。
静态方法是属于类的。
2.Base test
理由上面基本说了,我就不说了