当前位置: 代码迷 >> Java相关 >> 问个小问题
  详细解决方案

问个小问题

热度:52   发布时间:2008-07-30 12:54:44.0
你写一小段代码,标明一行起到A的作用,标明一行起到B的作用
----------------解决方案--------------------------------------------------------
一般如果需要判断对象实际类型的时候会用到的
如果有个方法是:
public static void test(A a) {
    System.out.println(a.getClass());
}
然后你创建2个对象:
A a = new A();
A b = new B();
然后把这2个引用传进去,你就会看到不同的结果
----------------解决方案--------------------------------------------------------
那是你NEW 的对象不一样啊,但是A a = new A();B b = new B();
不是也是不一样的结果,为什么一定要有A b = new B();
这种写法
----------------解决方案--------------------------------------------------------
你把test方法的参数改成类型B,你就知道为什么了
----------------解决方案--------------------------------------------------------
哦,你的意思就是说这样免得写两个test(A a),test(B b)?就这一个原因?
----------------解决方案--------------------------------------------------------
避免代码的繁琐啊
----------------解决方案--------------------------------------------------------
哦,
----------------解决方案--------------------------------------------------------
顶!最好自己试一下,调用里面的方法,看看有何异同
----------------解决方案--------------------------------------------------------
  相关解决方案