Java基礎第一節(jié):從HelloWorld到面向對象_第1頁
Java基礎第一節(jié):從HelloWorld到面向對象_第2頁
Java基礎第一節(jié):從HelloWorld到面向對象_第3頁
Java基礎第一節(jié):從HelloWorld到面向對象_第4頁
Java基礎第一節(jié):從HelloWorld到面向對象_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

HelloWorld到面向對象ava是完全面向對象的語言。Java通過虛擬機的運行機制,實現“跨平臺”的理念。我在這里想要呈現一個適合初學者的教程,希望對大家有用。

"HelloWorld!"先來看一個HelloWorld.java程序。這個程序在屏幕上打印出一串字符"HelloWorld!":publicclassHelloWorld{publicstaticvoidmain(String[]args){System.out.println("HelloWorld!");}}程序中包括Java的一些基本特征:類(class):上面程序定義了一個類HelloWorld,該類的名字與.java文件的名字相同。方法(method):類的內部定義了該類的一個方法main。語句(statement):真正的“打印”功能由一個語句實現,即:

System.out.println("HelloWorld!");

下面兩點有關Java的書寫方式:Java中的語句要以;結尾(與C/C++相同)。用花括號{}來整合語句,形成程序塊。通過程序塊,我們可以知道程序的不同部分的范圍,比如類從哪里開始,到哪里結束。

編譯與運行Java程序要經過編譯器編譯才能執(zhí)行。在Linux或Mac下,可以下載安裝JavaJDK。

使用javac來編譯。在命令行中輸入下面語句編譯:$javacHelloWorld.java當前路徑下,將有一個名為HelloWorld.class的文件生成。

使用java命令來運行。Java會搜尋該類中的main方法,并執(zhí)行。$javaHelloWorld

變量計算機語言通常需要在內存中存放數據,比如C語言中的變量,Java也有類似的變量。Java和C語言都是靜態(tài)類型的語言。在使用變量之前,要聲明變量的類型。

變量(variable)占據一定的內存空間。不同類型的變量占據不同的大小。Java中的變量類型如下:

存儲大小

例值

注釋byte

1byte

3

字節(jié)int

4bytes

3

整數short

2bytes

3

短整數long

8bytes

3

長整數float

4bytes

1.2

單精度浮點數double

8bytes

1.2

雙精度浮點數char

2bytes

'a'

字符boolean

1bit

true

布爾值

在Java中,變量需要先聲明(declare)才能使用。在聲明中,我說明變量的類型,賦予變量以特別名字,以便在后面的程序中調用它。你可以在程序中的任意位置聲明變量。比如:publicclassTest{publicstaticvoidmain(String[]args){System.out.println("Declareinthemiddle:");inta;a=5;System.out.println(a);//printaninteger}}上面a是變量名??梢栽诼暶髯兞康耐瑫r,給變量賦值,比如

inta=5;***“變量”的概念實際上來自于面向過程的編程語言。在Java中,所謂的變量實際上是“基本類型”(premitivetype)。我們將在類的講解中更多深入。

上面的程序還可以看到,Java中,可用//引領注釋。

數組Java中有數組(array)。數組包含相同類型的多個數據。我用下面方法來聲明一個整數數組:int[]a;

在聲明數組時,數組所需的空間并沒有真正分配給數組。我可以在聲明的同時,用new來創(chuàng)建數組所需空間:int[]a=newint[100];這里創(chuàng)建了可以容納100個整數的數組。相應的內存分配也完成了。

我還可以在聲明的同時,給數組賦值。數組的大小也同時確定。int[]a=newint[]{1,3,5,7,9};

使用int[i]來調用數組的i下標元素。i從0開始。其他類型的數組與整數數組相似。

表達式表達式是變量、常量和運算符的組合,它表示一個數據。1+1是常見的表達式。再比如:publicclassTest{publicstaticvoidmain(String[]args){System.out.println("Declareinthemiddle:");inta;a=5+1;System.out.println(a);//printaninteger}}上面的5+1也是一個表達式,等于6。

數學表達式數學運算,結果為一個數值1

+

2

加法4

-

3.4

減法7

*

1.5

乘法3.5

/

7

除法7

%

2

求余數

關系表達式判斷表達式是否成立。即一個boolean值,真假a

>

4.2

大于3.4

>=

b

大于等于1.5

<

9

小于6

<=

1

小于等于2

==

2

等于2

!=

2

不等于

布林表達式兩個boolean值的與、或、非的邏輯關系true

&&

false

and(3>1)

||

(2==1)

or!true

not

位運算對整數的二進制形式逐位進行邏輯運算,得到一個整數&

and|

or^

xor~

not5

<<

3

0b101leftshift3bits6

>>

1

0b110rightshift1bit

還有下列在C中常見的運算符,我會在用到的時候進一步解釋:m++

變量m加1n--

變量n減1condition

?

x1

:

x2

condition為一個boolean值。根據condition,取x1或x2的值

控制結構Java中控制結構(controlflow)的語法與C類似。它們都使用{}來表達隸屬關系。

選擇(if)if(conditon1){statements;

...}elseif(condition2){statements;

...}else{statements;

...}上面的condition是一個表示真假值的表達式。statements;是語句。

練習

寫一個Java程序,判斷2013年是否是閏年。

循環(huán)(while)while(condition){

statements;}

循環(huán)(do...while)do{

statements;}while(condition);

//注意結尾的;

循環(huán)(for)for(initial;condition;update){

statements;}

跳過或跳出循環(huán)在循環(huán)中,可以使用break;

//跳出循環(huán)continue;

//直接進入下一環(huán)

練習

寫一個Java程序,計算從1加2,加3……一直加到999的總和

選擇(switch)switch(expression){

case1:

statements;

break;

case2:

statements;

break;

...

default:

statements;

break;}

面向對象“對象”是計算機抽象世界的一種方式?!懊嫦驅ο蟆笨梢杂煤芏喾绞奖磉_。下面是一種并不精確,但比較直觀的理解方式:世界上的每一個事物都可以稱為一個對象(object),比如張三。對象有身份(Identity),狀態(tài)(State)和行為(Behavior)。對象的狀態(tài)由數據成員(datamember)表示。數據成員又被稱作域(field)。我們用其他對象作為該對象的數據成員。比如一個表示身高的整數,比如一個鼻子。對象的行為由成員方法(membermethod)表示。我們簡稱為方法(method)。一個對象可以有多個方法,比如呼吸,睡覺。對象可以歸類(class),或者說歸為同一類型(type)。同一類型的對象有相同的方法,有同類型的數據成員。某個類型的一個對象被稱為該類型的一個實例(instance)。

類與對象

定義類的語法:classClassName{

member1;

member2;

...}

我們定義一個human類:classHuman{voidbreath(){System.out.println("hu...hu...");}

intheight;}在{}范圍內,Human類有兩個成員:一個數據成員height,一個方法breath()。數據成員height是整數類型,可以用于存儲一個整數。方法代表了對象所能進行的動作,也就是計算機所能進行的操作。方法可以接受參數,并能返回值。在breath()的定義中,breath后面的()中為參數列表。由于參數列表為空,所以breath()不接受參數。在breath()之前的void為返回值的類型,說明breath不返回值。(方法與面向過程語言中的函數類似)

現在,我們創(chuàng)建對象aPerson,并調用對象的方法breath:publicclassTest{publicstaticvoidmain(String[]args){HumanaPerson=newHuman();aPerson.breath();

System.out.println(aPerson.height);}}classHuman{voidbreath(){System.out.println("hu...hu...");}intheight;}在main方法中,使用new關鍵字創(chuàng)建對象。即使是來自同一個類的對象,各個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論