﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Love Java-文章分类-java个人问题区</title><link>http://www.blogjava.net/Nail/category/27252.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 10 Nov 2007 19:56:46 GMT</lastBuildDate><pubDate>Sat, 10 Nov 2007 19:56:46 GMT</pubDate><ttl>60</ttl><item><title>声明为父类的子类实例 在调用成员变量和方法时，调用的是父类，还是子类的？（子类和父类的成员变量和方法名相同）</title><link>http://www.blogjava.net/Nail/articles/159625.html</link><dc:creator>Nail</dc:creator><author>Nail</author><pubDate>Sat, 10 Nov 2007 13:44:00 GMT</pubDate><guid>http://www.blogjava.net/Nail/articles/159625.html</guid><wfw:comment>http://www.blogjava.net/Nail/comments/159625.html</wfw:comment><comments>http://www.blogjava.net/Nail/articles/159625.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Nail/comments/commentRss/159625.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Nail/services/trackbacks/159625.html</trackback:ping><description><![CDATA[<p><font style="background-color: #80ff80">class Base<br />
{<br />
&nbsp;String str="BaseStr";<br />
&nbsp;String staticstr="Base static str";<br />
&nbsp;void method()<br />
&nbsp;{<br />
&nbsp;&nbsp;System.out.print("BaseMethod");<br />
&nbsp;}<br />
&nbsp;static void staticMethod()<br />
&nbsp;{<br />
&nbsp;&nbsp;System.out.print("Base Static Method");<br />
&nbsp;}<br />
}</font></p>
<p><font style="background-color: #80ff80">class Sub extends Base<br />
{<br />
&nbsp;String str="SubStr";<br />
&nbsp;String staticstr="Sub static str";<br />
&nbsp;void method()<br />
&nbsp;{<br />
&nbsp;&nbsp;System.out.print("SubMethod");<br />
&nbsp;}<br />
&nbsp;static void staticMethod()<br />
&nbsp;{<br />
&nbsp;&nbsp;System.out.print("Sub static Method");<br />
&nbsp;}<br />
}<br />
public class BaseType_SubInstance <br />
{<br />
&nbsp;public static void main(String[] args) <br />
&nbsp;{<br />
&nbsp;&nbsp;Base x=new Sub();<br />
&nbsp;&nbsp;System.out.println("x.str:"+x.str);&nbsp; //打印 x.str:BaseStr<br />
&nbsp;&nbsp;System.out.println("x.staticstr:"+x.staticstr);//打印 x.staticstr:Base static str<br />
&nbsp;&nbsp;System.out.print("x.method():");<br />
&nbsp;&nbsp;x.method();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //打印 SubMethod&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;System.out.print("\nx.staticMethod():");<br />
&nbsp;&nbsp;x.staticMethod(); //打印 Base Static Method<br />
&nbsp;}<br />
&nbsp;<br />
}</font></p>
为什么结果打印结果会是那样？
<img src ="http://www.blogjava.net/Nail/aggbug/159625.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Nail/" target="_blank">Nail</a> 2007-11-10 21:44 <a href="http://www.blogjava.net/Nail/articles/159625.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>