向上向下转型 UpCasting & DownCasting

@draft

//TODO 写得很不好,需要修改

这个问题起因于JavaWorld@TW的一个帖子:

http://www.javaworld.com.tw/jute/post/view?bid=29&id=233059

CSDN上的zhu_apollo举了一个例子,解说也较好,如下:

http://blog.csdn.net/zhu_apollo/archive/2007/11/26/1903374.aspx

但没能说明field的cast问题。

我写了一段代码(附件中的WhatJune03.java)(也附在上面的回复中):

输出的结果居然是:

A.hi

A1.hello(): 2

A1.bounjour

1

第二行,和第三行的count不一样,真是匪夷所思啊。

CSDN论坛上关于这个问题的一个帖子:

http://topic.csdn.net/t/20050318/16/3862462.html

百度知道的一个关于向下转型的问题链接:

http://zhidao.baidu.com/question/40523637.html

回答中的代码中Note2与问题无关,改后的代码在这里(附件中Music2.java)。