Transcript JAVA入門

物件導向O.O.P
OBJECT- ORIENT PROGRAM
Object(物件)
Message(訊息)
Method(方法)
Encapsulation(封裝性)
Class(類別)
Inheritance(繼承性)
Java 的特點
類似C++語言,簡單容易使用的語言
 安全的語言,有阻絕電腦病毒傳輸的功能
 物件導向(object orient)的程式語言
 跨平台的程式語言
 多執行緒(multi-thread)的語言
 網路語言
 WEB的程式語言

Java v.s JavaScript

Script:執行前並不需要編譯和連結動作
 JavaScript 結構較鬆散
 JavaScript是內崁於HTML文件中,Java是獨立的
 JavaScript只是應用於Client端的小程式
<script language="JavaScript">
<!-- hide script from old browser
var answer=0
var lastvalue=0
var op="+"
var lastop="+"
var newnumber=true

function operate(operation){
if ((newnumber!=true)||(op==" = "))
{
answer=""+answer
if ((operation!=" = ") && (op!=" = "))
{
lastvalue=document.calc.result.value
lastop=op
answer=eval(answer+lastop+lastvalue)
document.calc.result.value=answer
}
else if (operation==" = ")
{
if (op!=" = ")
{
lastop=op
lastvalue=document.calc.result.value
}
answer=eval(answer+lastop+lastvalue)
document.calc.result.value=answer
}
newnumber=true
}
op=operation
function input(digit){
if (op==" = ")
clearall()
if ((!newnumber)&&(document.calc.result.value!="0"))
document.calc.result.value+=eval(digit)
else
document.calc.result.value=""+eval(digit)
newnumber=false
}
function clearnow(){
document.calc.result.value="_"
newnumber=true
}
function clearall(){
answer=0
lastop="+"
op="+"
clearnow()
}
}
function change(){
answer=-1*document.calc.result.value
document.calc.result.value=answer
}
function point(){
if (!newnumber)
{
number=document.calc.result.value
if (number.indexOf('.')==-1)
document.calc.result.value+="."
}
}
環境介紹

Java的applet程式是用戶端(client)執行的程式
 Java的servlet程式存於web伺服器上是伺服器
端的執行程式
 Jdk(java developer’s kit)為java的發展工具
 http://java.sun.com
Jdk的工具組件

Appletviewer.exe
 Java.exe
 Javac.exe
 Javadoc.exe
 Javah.exe
 Javap.exe
 Jdb.exe
--applet觀察程式
--解譯程式
--編譯程式
--文件產生器
--C語言表頭檔工具程式
--反組譯程式
--除錯程式
JAVA程式的流程運作
編譯時
原始程式
*.java
Java compiler
Javac.exe
在網路及檔案系統中流通
執行時
Verifier
Code
generator
Class
loader
執行碼
Bytecode
*.class
Applet viewer
Interpreter
java
網頁
*.html
Java程式之撰寫

Java原始程式碼為文字檔案,可用任意編
輯器撰寫(*.java)
 經由javac.exe 編譯器將原始程式碼轉成
機械程式碼檔案 (*.class)
 註解文字: // ,/* -----*/
 以“;”為單行結尾
-applet之產生
在網頁html文件中加入呼叫class檔案的文
法指令即完成
 <applet code=“*.class”>
 </applet>
 由browser觀看結果

Java語言的基礎
字元集
 單碼字母:isLetter(ch)
 單碼數字:isDigit(ch)
 空白字元:isWhitespace(ch)
 隔開符號:( ){ } [ ] ; , .
 逸出順序:\n \t \b \r \f \’ \” \\ \ddd
運算子
優先順序 運算子 運算元
1 ++
算術
-算術
+,算術
~
整數
!
布林數
(型態 ) 不限
2 *, /, % 算術
3 +,算術
+
字串
4 <<
整數
>>
整數
>>>
整數
5 <,<=
算術
>,>=
算術
instanceof 物件 ,型態
運算結果
前增 1或後增 1
前減 1或後減 2
單加 ,單減
逐位元補數
邏輯補數
強迫轉型
乘,除,取餘數
加, 減
字串連結
左移
右移 ,符號填補
右移 ,0填補
大於 ,大於或等於
小於 ,小於或等於
型態相比較
優先順序 運算子
6 ==
!=
==
!=
7&
&
8^
^
9|
|
10 &&
11 ||
12 ?:
13
運算元
基本型態
基本型態
物件
物件
整數
布林
整數
布林
整數
布林
布林
布林
布林
變數
運算結果
相等
不相等
物件相同
物件不相同
逐位元 AND
布林 AND
逐位元 XOR
布林 XOR
逐位元 OR
布林 OR
條件AND
條件OR
條件運算
指定