第1週:
課程主題 : Course Introduction
課程內容: Introduction to Java, Java platform and Java program structures.
指定閱讀: 課程投影片,指定教科書Chapter 1.
教學活動與作業 : 1. 課程相關事項說明 2. 未來課程內容簡介
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 3 hours
第2週:
課程主題 : Java Data Types
課程內容: Primitive Data Types and Operations in Java (I)
指定閱讀: 課程投影片,指定教科書Chapter2.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第3週:
課程主題 : Data Types and Flow Control statments
課程內容: 1. Primitive Data Types and Operations in Java (II)
2. If statement and Switch statement
指定閱讀: 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第4週:
課程主題 : Flow Control statments in Java
課程內容: 1. For Statements 2. While statement 3. Break/Continue
指定閱讀: 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範 3. HW1
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 4 hours
第5週:
課程主題 : Java Methods
課程內容: 1. syntax/meaning of Java methods 2. return statements 3. parameter passing
指定閱讀: 課程投影片,指定教科書Chapter 6.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 5 hours
第6週:
課程主題 : Java Arrays
課程內容: 1. Single simensional arrays 2. Multi-dimensional arrays
指定閱讀: 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範 3. HW2
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 5 hours
第7週:
課程主題 : Java Objects and Classes
課程內容: 1. Basic OOP conecpts 2. Java Objects 3. Java Classes
指定閱讀: 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第8週:
課程主題 : Inheritance and Polymorphism
課程內容: 1. Java Inheritance 2. Polymorphism in Jva
指定閱讀: 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範 3. HW3
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第9週:
課程主題 : 期中考
課程內容: 隨堂考試
指定閱讀: 1-8週上課內容.
教學活動與作業 : 1. 筆試
學生學習投入時間: 課堂 : 2 hours. 課程前後 : 12 hours
第10週:
課程主題 : Some Essential Java Classes
課程內容: 1. String related classes, 2. Text I/O 3. Some useful Java classes
指定閱讀: 1. 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 5 hours
第11週:
課程主題 : Abstract Classes and Interfaces
課程內容: 1. Abstract Classes 2. Java Interfaces
指定閱讀: 1. 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 5 hours
第12週:
課程主題 : Java Exceptions and Assertions
課程內容: 1. Exceptions 2. Assertions
指定閱讀: 1.課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 4 hours
第13週:
課程主題: Java Generics
課程內容: 1. Why generics, 2. Generic types 3. Generic methods 4. Wildcard types 5. raw types and type erasure.
指定閱讀: 1. 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第14週:
課程主題: Java Nested Class and Lambda Expressions
課程內容: 1. static member class 2. non-static member class 3. local classes 4. anonymous class 5. Lambda Expressions
指定閱讀: 1. 課程投影片.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範 3. HW4
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第15週:
課程主題: Java Reflection
課程內容: 1. The Class class 2. Field 3. Method 4. Constructor 5. java.lang.reflect.Arrays
指定閱讀: 1. 課程投影片, 2. Oracle tutorial on the reflection API
(https://docs.oracle.com/javase/tutorial/reflect/.)
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第16週:
課程主題: Multithreading programming
課程內容: 1. Java Thread 2. Thread Interruption 3. Thread synchronization 4. Thread Pool Service
指定閱讀: 1. 課程投影片,2. 指定教科書Chapter 30.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範 3. HW5
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第17週:
課程主題: Java IO programming
課程內容: 1. Basic IO streams 2. Feature-added Processing streams 3. Paths and Files 4. Object Serialization
指定閱讀: 1. 課程投影片,.
教學活動與作業 : 1. 講授課程內容 2. 程式實作示範
學生學習投入時間: 課堂 : 3 hours. 課程前後 : 6 hours
第18週:
課程主題 : 期末考試
課程內容: 隨堂考試
指定閱讀: 10-17週上課內容.
教學活動與作業 : 1. 筆試
學生學習投入時間: 課堂 : 2 hours. 課程前後 : 12 hours