免費開始練習
高考申論題 112年 [資訊處理] 程式設計

第 一 題

📖 題組:
三、關於以下Java程式: 01 import java.io.*; 02 import java.util.ArrayList; 03 abstract class Fruit { 04 public Fruit(int sweetness) {this.sweetness = sweetness; } 05 public abstract String eat(); 06 protected String taste() { 07 if (sweetness>0 && sweetness<5) return "no"; 08 else if (sweetness<=10) return "little"; 09 else if (sweetness<=15) return "some"; 10 else if (sweetness<=20) return "more"; 11 else return "super"; 12 } 13 private int sweetness; 14 } 15 class Apple extends Fruit { 16 public Apple(String c, int s) { super(s); this.color = c; } 17 public String eat() { return color +":"+taste()+" sweetness "; } 18 private String color; 19 } 20 class Watermelon extends Fruit { 21 public Watermelon(String v, int s) { super(s); this.volume = v; } 22 public String eat() { return volume +":"+taste()+" sweetness "; } 23 private String volume; 24 } 25 public class Test { 26 public static void test01() { 27 ArrayList fs = new ArrayList(); 28 fs.add(new Apple("red", 18)); 29 fs.add(new Watermelon("big", 20)); 30 fs.add(new Apple("green", 10)); 31 fs.forEach((n) -> System.out.println(n.eat())); 32 } 33 public static void main(String[] args) throws InterruptedException { 34 test01(); 35 } 36 } (一)請說明程式執行後其輸出與其運作程式碼行數順序。(12分) (二)請依下面表格,說明Fruit的設計功用,包含Fruit類別類型與功用以及方法(method)。(13分) | | Fruit類別類型與功用 | Fruit方法功用 | eat功用 | taste功用 | |---|---|---|---|---| | 說明 | | | | |
📝 此題為申論題,共 2 小題

小題 (一)

請說明程式執行後其輸出與其運作程式碼行數順序。(12分)

思路引導 VIP

本題分為兩部分:一是求輸出結果,二是追蹤程式執行的「行數順序」。

  1. 輸出結果
🤖
AI 詳解
AI 專屬家教

【考點分析】 本題考驗物件導向程式設計(OOP)中的建構子呼叫順序(包含 super() 的連動)、多型(Polymorphism)在執行期的動態綁定、以及 Lambda 表示式與集合的操作流程追蹤。 【分析與論述】

小題 (二)

請依下面表格,說明Fruit的設計功用,包含Fruit類別類型與功用以及方法(method)。(13分)
| | Fruit類別類型與功用 | Fruit方法功用 | eat功用 | taste功用 |
|---|---|---|---|---|
| 說明 | | | | |

思路引導 VIP

本題要求分析 Fruit 類別在物件導向設計中的角色,並需對照表格項目作答。

  1. Fruit類別類型與功用abstract class(抽象類別)。功用是作為所有水果的「基礎樣板(Base Class)」,定義共有的屬性(甜度 sweetness)並制定共通的行為介面,達到程式碼重用與多型設計的目的。
🤖
AI 詳解
AI 專屬家教

【考點分析】 本題測驗物件導向三大特性(封裝、繼承、多型)在實際 Java 程式碼中的應用與設計模式(Design Pattern)中的樣板方法(Template Method)基礎概念,區分「抽象類別」、「抽象方法」與「具體方法」的設計目的。 【分析與論述】

📝 同份考卷的其他題目

查看 112年[資訊處理] 程式設計 全題