臺北市立大學 資訊科學系(含碩士班) 賴阿福 CS TEAM

Slides:



Advertisements
Similar presentations
软件编程基础 一、程序的编辑 Java 源程序是以 Java 为后缀的简单的文本文件,可以用各种 Java 集成开发环境中的源代码编辑器来编写,也可以用其他文 本编辑工具,如 Windows 中的记事本或 DOS 中的 EDIT 软件等。 利用文字编辑器编写下列程序 public class Hello.
Advertisements

Java 大学实用教程 ( 第 3 版 ) 主讲:程继洪 第 1 章 Java 语言概述  本章导读 Java 语言的诞生Java 语言的诞生 学习 Java 的必要性 学习 Java 的必要性 Java 的特点及与 C/C++ 之关系Java 的特点及与 C/C++ 之关系.
第 2 章 Java 运行环境搭建 2.1 Java 的运行系统 2.1 Java 的运行系统 2.2 JDK 的安装与配置2.2 JDK 的安装与配置 2.3 Java 开发工具包 2.4 Java 源文件编辑环境的选择 2.5 Application 和 Applet 程序的编写与运行.
1 Java 语言程序设计 计算机系 鲍金玲. 2 引子 甲骨文 甲骨文是全球最大的信息管理软件及服务供应商,成立于 1977 年,公司总部 设在美国加利福尼亚州的红木城( Redwood Shores ),全球员工达 名, 包括 名开发人员、 7500 多名技术支持人员和.
1 Java 程序设计 Java 程序设计 Java Programming Fall, 2013.
Java 程序分类 Java Application :是完整程序,需要独立的解 释器解释运行;以 “.java” 为后缀的文件,以 main() 方法作为程序入口,由 java 编译器编译生 成字节码,由 Java 解释器加载执行字节码。 Java Applet 没有 main() 方法作为程序入口,是嵌在.
第一章 Java 程序设计技术 概述  什么是 Java 语言  一个简单的 Java 程序  程序的编译和运行  常见错误  使用 Java 核心 API 文档.
程序设计语言基础 软件工程系 秦晓燕. 课程目标 了解面向对象程序设计的思想,以及软件 开发流程。 学习 Java 语言的基本概念和编程方法,基 本掌握 Java 类库的使用。 能够利用所学的方法开发简单的小型应用 程序.
Java 程序设计 案例教程 北京大学出版社 第 01 章. Java 程序设计案例教程 第 01 章 Java 语言与面向对象程序设计 Java 语言的历史 Java 语言的特点 Java 程序的分类 Java 环境配置 Eclipse 的安装 Java 程序的调试 教学目标.
Java 程序设计(第二版) 普通高等教育 “ 十一五 ” 国家级规划教材 辛运帷等 编著 徐小平 主讲.
云计算辅助教学风云录 黎加厚 上海师范大学教育技术系 2010年8月9日.
第1章 Java语言概述.
《 Java开发环境配置》 主讲人:耿力.
Java 2实用教程(第3版)教学课件 主讲教师:张国平
基础模块 模块一 程序设计基础 (一)开发环境部分.
授课教师:江星玲 1.
第一章 認識程式語言.
第四章 電腦軟體 課前指引 實體的電腦裝置,我們稱之為「硬體」(Hardware),至於軟體則是個抽象的概念,軟體是經由人類以各種不同的程式語言撰寫而成,以達到控制硬體、進行各種工作的抽象化(例如文書處理)等動作。有些讀者經常迫不及買了一台新電腦,就以為可以開始使用!事實不然,一部配備齊全的電腦,如果沒有合適的軟體來控制與搭配,絕對也是英雄無用武之地。一般來說,我們將軟體分「系統軟體」(System.
Java程序设计教程 第一讲 Java概述.
Java的程式架構與基本觀念 Java語言的歷史 Java程式的開發環境 Java程式的架構 輸出與輸入物件之使用 工具使用方法介紹
四資二甲 第三週作業 物件導向程式設計.
JAVA程序设计.
《Java程序设计之网络编程》 教学课件 重庆大学计算机学院
面向对象程序设计(Java) 徐志红
北京科技大学天津学院 信息工程系 面 向 对 象 程 序 设 计 第1讲 Java初探 主讲:于静.
计算机学院计算机科学与技术系 中德联合软件技术研究所 李波
程設一.
第1章 java简介及环境搭建 第1章 Java简介及开发环境搭建.
作業系統的結構 日期 : 2018/9/17.
C# 程式設計 第一部分 第1-4章 C# 程式設計 - 南華大學資管系.
程式設計實作.
臺北市立大學 資訊科學系(含碩士班) 賴阿福 CS TEAM
淺談Visual C# 程式設計 國立台灣師大附中 李啟龍 Jason.
簡易 Visual Studio 2010 C++ 使用手冊
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
實作輔導 日期: 3/11 09:10~16:00 地點:臺北市立大學 臺北市中正區愛國西路一號 (中正紀念堂站7號出口)
第一章 電腦、程式與JAVA.
Android 课程讲义 智能手机开发
計算機結構 – 概論 陳鍾誠 於金門大學.
第一章 C語言概論 本章投影片僅供本書上課教師使用,非經同意請勿拷貝或轉載.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
2018/12/7 Java语言程序设计 教师:段鹏飞.
Java基础入门 第1章 Java开发入门 · Java语言的特点 · Java开发环境的搭建 · 环境变量的配置 · Java的运行机制.
第8章 記憶體管理的概念.
實作輔導 3 日期: 4/14(星期六) 09:10~12:00、13:10~16:00
第九單元 Classes and data abstraction I
微软新一代云计算 面向企业的 Office 365 客户培训大纲
重點 資料結構之選定會影響演算法 選擇對的資料結構讓您上天堂 程式.
簡易 Visual Studio 2005 C++ 使用手冊
Instructor:Po-Yu Kuo 教師:郭柏佑
第一章 Java语言概述.
認識 Java.
C/C++/Java 哪些值不是头等程序对象
第 1 章 Java 簡介.
* 單元:電腦與問題解決 主題:Java物件導向程式設計-類別與物件 台南縣國立善化高中 蕭嘉民 老師
第1章 Java语言概述 学习目标 本章要点 上机练习 习 题.
面向对象 程序设计语言基础 马骏
《JAVA程序设计》 语音答疑 辅导老师:高旻.
實作輔導 2 日期: 3/24(星期六) 09:10~16:00 地點:臺北市立大學 臺北市中正區愛國西路一號 (中正紀念堂站7號出口)
為什麼要學 OOP?.
開發Java程式語言的工具 JDK.
虚 拟 仪 器 virtual instrument
ARM Developer Suite 介 绍.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
龍老師我不會Debug QQ.
程式語言簡介 2019/7/17 明乘中學編製.
面向对象程序设计 C++教程 西安工业大学 于帆.
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
Introduction to the C Programming Language
第三章 计算机体系结构.
Presentation transcript:

臺北市立大學 資訊科學系(含碩士班) 賴阿福 laiahfur@gmail.com CS TEAM Java程式設計第一類接觸 臺北市立大學 資訊科學系(含碩士班) 賴阿福 laiahfur@gmail.com CS TEAM

如何將高階語言轉換(翻譯;解譯;編譯;translate)為機械語言? 編輯 (edit) 工具 editor 來源碼source code 編譯 (compile) compiler 語法錯誤 目的碼object code Link Linker 可執行碼executable code 載入 (Load) Loader ROM main() RAM CPU Library Main memory PC PC: Program counter

Java電腦語言歷史 Java (爪哇島) is an island of Indonesia. Java is a general-purpose computer programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible. It is intended to let application developers “write once, run anywhere” (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation.  Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of computer architecture (X86, MIPS, ARM....). Java was originally developed by James Gosling at Sun Microsystems (which has since been acquired by Oracle Corporation) and released in 1995 as a core component of Sun Microsystems' Java platform. James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June 1991. The language derives much of its syntax from C and C++, but it has fewer low-level facilities than either of them. The original and reference implementation Java compilers, virtual machines, and class libraries were originally released by Sun under proprietary licenses. As of May 2007, in compliance with the specifications of the Java Community Process, Sun relicensed most of its Java technologies under the GNU General Public License. Others have also developed alternative implementations of these Sun technologies, such as the GNU Compiler for Java (bytecode compiler), GNU Classpath (standard libraries), and IcedTea-Web (browser plugin for applets). Java was originally designed for interactive television, but it was too advanced for the digital cable television industry at the time. The language was initially called Oak after an oak tree that stood outside Gosling's office. Later the project went by the name Green and was finally renamed Java, from Java coffee. Gosling designed Java with a C/C++-style syntax that system and application programmers would find familiar. Sun Microsystems (昇陽公司) released the first public implementation as Java 1.0 in 1995. The latest version is Java 8 which is the only version currently supported for free by Oracle  (甲骨文公司) . 資料來源 https://en.wikipedia.org/wiki/Java_(programming_language)

如何將java語言轉換(翻譯;解譯;編譯;translate)為bytecode? 執行 CPU 編輯 (edit) 工具 editor 來源碼source code 編譯 (compile) compiler 語法錯誤 JAVA VIRTUAL MACHINE FOR MS x86 Library 位元組碼 byte code POWER pc Arm JAVA VIRTUAL MACHINE FOR iOS JAVA VIRTUAL MACHINE FOR UNIX DEBUG .class .java 位元組碼byte code : 虛擬機械碼(PSUEDO CODE),需透過java解譯程式才能執行 write once, run anywhere 跨平台程式語言

語言?電腦語言? 語法: 規則、結構 (限制) 語句: statement 語意: 解決方法 (演算法)

學習程式之觀念 漸進式學習 From unclear to clear 不用全部學完語法再開始程式設計 從基本功能進化、優化 不可能一步登天 從基本功能進化、優化 養成規劃、設計習慣 不要怕出現Bug 思考、動手寫程式

撰寫java程式三部曲 編輯(edit):如用記事本編寫 編譯(compile) 執行 (run, execute) :如果編譯完成沒錯誤 如果編譯未完成(有錯誤:bug, error) 除錯(debug): 找出錯誤,修正 重新編譯 如果編譯完成,產出 .class 執行 (run, execute) :如果編譯完成沒錯誤

你的第一支java程式

How to edit your first java program? 新增”資料夾”存放java程式檔,自己為資料夾取名字(如afjava) 開啟記事本軟體 輸入第一個程式或由酷課雲下載welcomea.java至自己資料夾(如afjava) 以類別名稱存檔,副檔名為java import java.util.*; public class welcomea{ public static void main(String args[]){ System.out.println("Java is an excellent computer language."); System.out.println("Let's start to learn Java!"); }//main() }//class

How to compile your first program? 進入cmd編譯程式: command line環境 (MS DOS) 查看結果: 產出.class cmd

How to run your first program?執行 錯誤 Java welcomea.class 正確 Java welcomea

副檔名未出現,how to do?

開始練習! 仿作:EDIT, COMPILE, RUN 修改: 增加一行輸出,如

程式回顧 import java.util.*; //匯入函數庫 public class welcomea{ public static void main(String args[]){ //主程式名稱固定 //主程式body }//main()結尾 }//class結尾 Class body

仔細研究程式 import java.util.*; //匯入函數庫 public class welcomea{ public static void main(String args[]){ System.out.println(“Java is an excellent computer language.”);//輸出 System.out.println("Let's start to learn Java!"); }//main() }//class

程式概念 Java是物件導向(OOP)語言,因此在設計都須將程式視為物件之類 別(class),給予類別名稱(class name),且類別名稱一定是主檔案 名稱(主檔名),副檔名一定是java。 類別名稱如何命名? 以英文字開頭,取有意義名稱,勿用中文 Java程式由許多函數/方法(function/method)所組成,函數是由許 多敘述或指令所組成。

程式概念 CPU如何知道開始要執行哪一函數?CPU很笨! 因此須規定開始執行的函數(entry point),那就是main,main即為主函數。 大部分電腦都不是自然語言,因此會先規定一些字彙做為特殊功 能,即保留字(reserved word),這些字有特殊用途,不可任意使 用 class, public, static, void 區分大小寫(case sensitive):各種名稱、保留字 . :class/object存取符號,”的” “ ”: 字串常數 // :註解(comment), 說明用,不是指令,編譯時會被忽略

習題2-1:編輯你的第一支java程式,完成java程式三部曲 為你的第一支java程式取名字,如AF_first.java 名字規則:英文字開頭、區分大小寫、第二字元後可用數字_,但不可 用+-*/ 輸出敘述至少四行,寫出第一支java程式感受,中英文不限 System.out.println(“ !"); 上傳作業(.java及執行畫面截圖放.docx)至酷課雲 import java.util.*; //匯入函數庫 public class AF_first { public static void main(String args[]){ System.out.println(“”);//輸出 System.out.println(""); }//main() }//class

Debug抓錯蟲 mport java.util.*; /匯入函數庫 public class 9welcomex{ public static void Main(String args[]){ system.Out.println(“Java is an excellent computer language.’’);/輸出 system.Out.println(‘Let's start to learn Java!’) }/main() }/class

Second program import java.util.*; public class welcome_c{ public static void main(String args[]){ System.out.print("Please input your name:"); Scanner sca = new Scanner(System.in);//產生Scanner物件, 提供鍵盤輸入 String name = sca.next(); System.out.println("welcome "+name+"!!"); }//main() }//class

Debug(偵錯)之由來

何謂偵(抓)錯(debug)?語法(syntax)˴語意(semantic)錯誤? 何謂執行程式? 作業系統之Loader程式負責載入RAM,再交給CPU執行 為何需要Library函式庫? 站在巨人肩膀,有些程式細節非常複雜如Input/Output、圖形之細部工作, 因此必須提供系統函數提供設計者直接引用. 語法(syntax)錯誤? 指的是句子文法上的錯誤,ie:我是學生  我學生是 Compiler可抓到語法錯誤 語意(semantic)錯誤? 指的是句子意思上的錯誤,ie:我是學生  我不是學生 Compiler抓不到語意錯誤