<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-TW">
		<id>https://fgchen.com/wiki/index.php?action=history&amp;feed=atom&amp;title=SCJP_1.6%E7%89%88%E8%80%83%E9%A1%8C_051</id>
		<title>SCJP 1.6版考題 051 - 修訂歷史</title>
		<link rel="self" type="application/atom+xml" href="https://fgchen.com/wiki/index.php?action=history&amp;feed=atom&amp;title=SCJP_1.6%E7%89%88%E8%80%83%E9%A1%8C_051"/>
		<link rel="alternate" type="text/html" href="https://fgchen.com/wiki/index.php?title=SCJP_1.6%E7%89%88%E8%80%83%E9%A1%8C_051&amp;action=history"/>
		<updated>2026-04-13T12:56:13Z</updated>
		<subtitle>本 Wiki 上此頁面的修訂歷史</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>https://fgchen.com/wiki/index.php?title=SCJP_1.6%E7%89%88%E8%80%83%E9%A1%8C_051&amp;diff=1376&amp;oldid=prev</id>
		<title>Ikk：新頁面:  1. public interface A{  2.   public void doSomething(String thing);  3. }  1. public class AImpl implements A{  2.   public void doSomething(String msg){}  3. }  1. public class B{  2...</title>
		<link rel="alternate" type="text/html" href="https://fgchen.com/wiki/index.php?title=SCJP_1.6%E7%89%88%E8%80%83%E9%A1%8C_051&amp;diff=1376&amp;oldid=prev"/>
				<updated>2013-03-30T07:21:50Z</updated>
		
		<summary type="html">&lt;p&gt;新頁面:  1. public interface A{  2.   public void doSomething(String thing);  3. }  1. public class AImpl implements A{  2.   public void doSomething(String msg){}  3. }  1. public class B{  2...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新頁面&lt;/b&gt;&lt;/p&gt;&lt;div&gt; 1. public interface A{&lt;br /&gt;
 2.   public void doSomething(String thing);&lt;br /&gt;
 3. }&lt;br /&gt;
 1. public class AImpl implements A{&lt;br /&gt;
 2.   public void doSomething(String msg){}&lt;br /&gt;
 3. }&lt;br /&gt;
 1. public class B{&lt;br /&gt;
 2.   public A doit(){&lt;br /&gt;
 3.     //more code here&lt;br /&gt;
 4.   }&lt;br /&gt;
 5.&lt;br /&gt;
 6.   public String execute(){&lt;br /&gt;
 7.     //more code here&lt;br /&gt;
 8.   }&lt;br /&gt;
 9. }&lt;br /&gt;
   &lt;br /&gt;
 1. public class C extends B{&lt;br /&gt;
 2.   public AImpl doit(){&lt;br /&gt;
 3.     //more code here&lt;br /&gt;
 4.   }&lt;br /&gt;
 5.&lt;br /&gt;
 6.   public Object execute(){&lt;br /&gt;
 7.     //more code here&lt;br /&gt;
 8.   }&lt;br /&gt;
 9. }&lt;br /&gt;
  &lt;br /&gt;
 &lt;br /&gt;
 Which statement is true about the classes and interfaces?&lt;br /&gt;
   A. Compilation will succeed for all classes and interfaces.&lt;br /&gt;
   B. Compilation of class C will fail because of an error in line 2.&lt;br /&gt;
   C. Compilation of class C will fail because of an error in line 6.&lt;br /&gt;
   D. Compilation of class AImpl will fail because of an error in line 2.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:medium;&amp;quot;&amp;gt;解答&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size: medium;&amp;quot;&amp;gt;Ans: C  &amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:medium;&amp;quot;&amp;gt; 解說:&lt;br /&gt;
 Overriding 規則：方法名、參數、回傳皆要和父類別中的方法一樣，此例類別C中的execute方法其傳回值是Object，&lt;br /&gt;
 與父類別B中的execute中的傳回值String不同，類別C中的execute允許傳回非String類別物件，&lt;br /&gt;
 因為以最大的Object限定傳回值型態，而Object是所有類別的父類別，也就是說類別C的execute有可能傳回非String類別型態，違背覆載的規則。 &lt;br /&gt;
 &lt;br /&gt;
 String is an Object. 但Object未必一定是String…&lt;br /&gt;
&amp;lt;/span&amp;gt;	&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
{{SCJP 1.6版考題講解}}&lt;/div&gt;</summary>
		<author><name>Ikk</name></author>	</entry>

	</feed>