2 項進行中

115-1 選課時程

進行中

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

加入行事曆

選擇訂閱 Google Calendar,或下載通用的 ICS 檔案。

使用 Google Calendar 時,Google 會收到這份課表的公開連結。

JAVA程式設計

JAVA Programming

學期
107-2
學分
0 學分
當期課號
1072
永久課號
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

    1. What is Java 2. History of Java 3. Java Platform 4. The Java Programming Language 5. Java Bytecode.(Write once, Run Anywhere) 6. Java API 7. J2SE 8. Java Virtual Machine 9. Basics of a Typical Java Environment

    講授:
    6
  • Introduction to Java Applications

    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)

    講授:
    5
  • Introduction to Java Applets

    1. A First Program in Java Applet Program 2. Drawing Strings, Lines and Rectangles. 3. Font Control 4. Color Control 5. Compiling and Executing Applet Program

    講授:
    5
  • Methods

    1. Math class Methods 2. Java API Packages 3. Using GUI component: class JTextArea 4. Using GUI component : class JLabel 5. Concept of Event Handling 6. Using GUI component: class JButton 7. Example: A Game of Chance

    講授:
    6
  • Arrays

    1. Declaring and Creating Array 2. Enhanced for statement 3. Passing Arrays to Methods 4. Multidimensional Arrays 5. Variable-Length Argument Lists 6. Introduction to JPanel and JFrame

    講授:
    6
  • Classes and Objects

    1. Time Class Case Study 2. Using This Reference 3. Composition 4. Enumerations 5. Static Class Members 6. Static Import 7. Final Instance Variables 8. Creating Package 9. Package Access

    講授:
    6
  • Inheritance and Polymorphism

    1. Super class and Subclass 2. Protected member and Access 3. Constructor in Subclass 4. Object class 5. Polymorphism Examples 6. Demonstrating Polymorphic Behavior 7. Abstract Classes and Methods 8. Final Methods and Classes 9. Creating and Using Interfaces 10. Nested Classes 11. Anonymous Inner Classes

    講授:
    6
  • Graphical User Interface (GUI) Components

    1. Overview of SWING Components 2. Event handling 3. JLabel, JTextfield, JButton 4. JCheckBox and JRadioButton 5. JComboBox 6. JList, Multiple-Selection Lists 7. Mouse Event Handling 8. Adaptor Classes 9. Key Event Handling 10. Layout Managers: FlowLayout,BorserLayout, GridLayout

    講授:
    6
  • Graphics and Java2D

    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

    講授:
    2
  • Multithreading

    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 7. Producer/Consumer Relationship: Without/with Synchronization 8. Producer/Consumer Relationship: Circular Buffer 9. Multithreading with GUI

    講授:
    6
週次計畫
週次主題
第 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 Java Applet Program 2. Drawing Strings, Lines and Rectangles. 3. Font Control 4. Color Control 5. Compiling and Executing Applet Program

第 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