校際選修

115-1 選課時程

進行中

  • 初選第一階段 6/15/2026
  • 初選第二階段 6/22/2026
  • 校際選修 8/24/2026
  • 初選第三階段 8/31/2026
  • 開學後加退選 9/7/2026
  • 逾期加退選 9/21/2026
選課資源

JAVA程式設計

JAVA Programming

學期
108-2
學分
3 學分
當期課號
1055
永久課號
UEE2303
開課單位
電機工程學系
授課教師
蔡中庸
校區
光復
類別
選修
上課時間表
週三
週五
3
10:10–11:00
JAVA程式設計
EE102
2 節連堂
4
11:10–12:00
6
14:20–15:10
JAVA程式設計
EE102

* 根據陽明交大上課時間表所列

概述

Student will be well-prepared to create cross-platform Java Application or JavaFX application program. 學生能設計出符合現代軟體發展需求、跨平台 (Cross-Platform)、可以在Local computer or Browser執行的視窗化軟體程式

先修科目

計算機概論與程式設計 , 物件導向程式設計 進階物件導向程式設計 開學第一星期, 所有修課同學都需要作最基本的程式檢定 以避免無法達到學習效果. 主要考最基本的OOP程式設計: Constructor, Class, Inheritance, Polymorphism

教學方式

a. 使用學校e3網站。 b. 重要單元都有自製講義或者補充重要程式,來說明補充課本的不足。上課仍然發給學生紙本講義,讓學生可以作筆記,這些講義同時都也都放置在e3講義區。

課程大綱
  • Introduction to Java Programming
  • Introduction to Java Applications
  • Introduction to Java Applets
  • Methods
  • Arrays
  • Classes and Objects
  • Inheritance and Polymorphism
  • Graphical User Interface (GUI) Components
  • Graphics and Java2D
  • Multithreading
週次計畫
週次主題
第 1 週1. What is Java 2. History of Java 3. Java Platform 4. The Java Programming Language 5. Java Bytecode.(Write once, Run Anywhere)
第 2 週1. Java API 2. J2SE 3. Java Virtual Machine 4. Basics of a Typical Java Environment
第 3 週1. A First Program in Java Application Program 2. Compiling the Source File 3. Executing the Bytecode 4. Displaying Text in a Dialog Box.(Using JOptionPane class)
第 4 週1. A First Program in JavaFX Program 2. Drawing Strings, Lines and Rectangles. 3. Font Control 4. Color Control 5. Compiling and Executing JavaFX Program 6. Scene Builder
第 5 週1. Math class Methods 2. Java API Packages 3. Using GUI component: class JTextArea 4. Using GUI component : class JLabel
第 6 週1. Concept of Event Handling 2. Using GUI component: class JButton 3. Example: A Game of Chance
第 7 週1. Declaring and Creating Array 2. Enhanced for statement 3. Passing Arrays to Methods
第 8 週1. Multidimensional Arrays 2. Variable-Length Argument Lists 3. Introduction to JPanel and JFrame
第 9 週1. Time Class Case Study 2. Using This Reference 3. Composition 4. Enumerations 5. Static Class Members
第 10 週1. Static Import 2. Final Instance Variables 3. Creating Package 4. Package Access
第 11 週1. Super class and Subclass 2. Protected member and Access 3. Constructor in Subclass 4. Object class 5. Polymorphism Examples 6. Demonstrating Polymorphic Behavior
第 12 週1. Abstract Classes and Methods 2. Final Methods and Classes 3. Creating and Using Interfaces 4. Nested Classes 5. Anonymous Inner Classes
第 13 週1. Overview of SWING Components 2. Event handling 3. JLabel, JTextfield, JButton 4. JCheckBox and JRadioButton
第 14 週1. JComboBox 2. JList, Multiple-Selection Lists 3. Mouse Event Handling
第 15 週1. Adaptor Classes 2. Key Event Handling 3. Layout Managers: FlowLayout,BorserLayout, GridLayout
第 16 週1. The Hierarchy of class Graphics in Java 2. Color, Font Control 3. Drawing Lines, Rectangles ,Ovals and Arcs 4. Drawing Polygons and Polylines 5. Java 2D API: Translate and Rotate
第 17 週1. Thread States: Life Cycle of a Thread 2. Thread Priorities and Thread Scheduling 3. Interface Runnable and class Thread 4. Creating and Executing Threads 5. Thread Synchronization 6.Thread Interaction: Wait, Notify, Notifyall
第 18 週1. Producer/Consumer Relationship: Without/with Synchronization 2. Producer/Consumer Relationship: Circular Buffer 3. Multithreading with GUI
教科書

1. Java How To Program "Early Objects" Deitel & Deitel Pearson , 2018, 11/E 2. Teaching resources from http://www.oracle.com/technetwork/java/index.html

Office Hours
地點
工五館762室
時間
每星期兩小時
聯絡方式
Tel:54367 e-mail: cytsai@mail.nctu.edu.tw