偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

java教程之Java編程基礎(chǔ)

開發(fā) 后端
本文介紹的是java程序設(shè)計語言編程的一些基礎(chǔ)知識,希望對大家有幫助,一起來看。

Java語言由語法規(guī)則和類庫兩部分組成,其中語法規(guī)則確定了Java程序的書寫規(guī)范,學(xué)習(xí)好語法規(guī)則是Java語言,也是所有編程語言的基本功。本文主要向大家簡單介紹一下Java的語法規(guī)則。 Java語言與C/C++語言有著緊密的聯(lián)系,Java中的許多術(shù)語來自于C++,起語法也來自于C++。因此Java的語法和c++的語法計劃一模一樣。下面簡單介紹一下Java的具體語法。

一、Java的詞法

1、標(biāo)識符

標(biāo)識符是類、變量和方法等的名字,作用是讓編譯器能夠識別它們。在Java語言中,標(biāo)識符可以包含數(shù)字、字母、下劃線(_)和美圓符號($),但是不能以數(shù)字作為開頭。與C/C++語言不同的是,Java語言還可以將一些非拉丁字母包含在標(biāo)識符中,這是因為Java語言使用的是Unicode字符,所有的十六進(jìn)制00C0以上的Unicode字符都可以用在標(biāo)識符中。但是Java語言的關(guān)鍵字是不能用來作為標(biāo)識符的。

我們在使用標(biāo)識符的時候應(yīng)該盡量表達(dá)所要表示的類、變量、方法等的含義。另外,標(biāo)識符中可以使用下劃線,我們應(yīng)該充分利用這一點(diǎn)以提高程序的可讀性。

2、關(guān)鍵字

以下是Java的全部關(guān)鍵字:

  1. abstract double int strictfp**   
  2. boolean else interface super  
  3. break extends long switch   
  4. byte final native synchronized  
  5. case finally new this   
  6. catch float package throw   
  7. char for private throws  
  8. class goto* protected transient   
  9. const* if public try   
  10. continue implements return void   
  11. default import short volatile   
  12. do instanceof static while  
  13. * 尚未使用的關(guān)鍵字  
  14. ** 為Java 2增加的關(guān)鍵字 

3、注釋

Java有三種形式的注釋:

***種是C語言的傳統(tǒng)注釋方式,即將“/*”和“*/”之間的文本都視為注釋,這種注釋可以跨越多行。

第二種是C++風(fēng)格的注釋,即將“//”之后直到行尾的文本都視為注釋,這種注釋只能包含一行。

第三種是Java新增加的注釋方式,即將“/**”和“*/”之間的文本都視為注釋,這種注釋也可以夸耀多行。注意,這種注釋方式生成的注釋將作為Javadoc文檔保存。

二、操作符

1、算術(shù)操作符

操作符 用途 優(yōu)先級 結(jié)合性
++,--  自動遞增,自動遞減  2(僅次于括號) 從右到左
+,-  一元加,一元減  2 從右到左
*,/ 乘,除 3 從左到右
% 取余(求模) 3 從左到右
+,- 加,減 4 從左到右

2、布爾運(yùn)算與關(guān)系運(yùn)算符

操作符 用途 優(yōu)先級 結(jié)合性
 
 >,<,>=,<= 測試相對大小 6 從左到右
== 測試相等性 7 從左到右
!= 測試不等性 7 從左到右
?: 根據(jù)***個操作數(shù)返回后兩個操作數(shù)之一 13 從左到右
! 2 從右到左
& 布爾與 8 從左到右
^ 異或 9 從左到右
| 布爾或 10 從左到右
&& 條件與 11 從左到右
||  條件或 12 從左到右

3、位操作符

操作符 用途 優(yōu)先級 結(jié)合性
~ 非(位求補(bǔ)) 2 從右到左
<<,>> 左移,右移 5 從左到右
>>> 當(dāng)作無符號右移 5 從左到右
& 位和 8 從左到右
^ 位異或 9 從左到右
| 位或 10 從左到右

4、賦值操作符

操作符 用途 優(yōu)先級 結(jié)合性
= 賦值 14 從右到左
*= 操作同時賦值 14 從右到左
/= 操作同時賦值 14 從右到左
  %= 操作同時賦值 14 從右到左
-= 操作同時賦值 14 從右到左
+= 操作同時賦值 14 從右到左
>>= 操作同時賦值 14 從右到左
<<= 操作同時賦值 14 從右到左
>>>= 操作同時賦值 14 從右到左
^= 操作同時賦值  14 從右到左
|= 操作同時賦值 14 從右到左
&= 操作同時賦值 14 從右到左

5、特殊操作符

cast操作符將一種數(shù)據(jù)類型轉(zhuǎn)換成為另一種數(shù)據(jù)類型,cast應(yīng)寫成把要校正操作數(shù)的類型名放在括號中。

例如:

  1. int i;   
  2. long l;   
  3. l=7876547;   
  4. i=(int)l;  

如果給高精度的變量賦予一個低精度值,則不需校正。類型校正操作符的優(yōu)先級為2,結(jié)合性為從右到左結(jié)合。

將以上講到的操作符的優(yōu)先級總結(jié)如下:

優(yōu)先級 運(yùn)算符   結(jié)合順序
1  []數(shù)組運(yùn)算 .點(diǎn)運(yùn)算符 ()調(diào)用方法 從左到右
 2  ! ~ ++ -- +(一元加) -(一元減) ()強(qiáng)制類型轉(zhuǎn)換 new  從右到左
 3  * / %  從左到右
 4 +(二元加) -(二元減) 從左到右
 5  >> << >>> 從左到右
 6  < <= > >= instanceof 從左到右
 7  == != 從左到右
8  & 從左到右
9 ^ 從左到右
10  | 從左到右
 11  && 從左到右
 12  || 從左到右
 13  ?: 從左到右
 14    = += -= *= /= %= &= |= ^= <<= >>= >>>= 從右到左 

三、常量

1、整型常量

在Java語言中,整型常量有三種形式,它們分別是:十進(jìn)制、八進(jìn)制、十六進(jìn)制。需要注意的是十進(jìn)制數(shù)不能以0開頭,這是因為八進(jìn)制的數(shù)是以0開頭的,而十六進(jìn)制數(shù)以0x或0X開頭。

2、浮點(diǎn)型常量

浮點(diǎn)數(shù)只能表示十進(jìn)制數(shù)。浮點(diǎn)數(shù)有兩種表示方法,即標(biāo)準(zhǔn)表示法和科學(xué)記數(shù)法。浮點(diǎn)數(shù)又分為單精度數(shù)和雙精度數(shù)。

3、布爾型常量

布爾型常量有兩個值:ture(或TURE)和false(或FALSE)它們分別表示真和假,這兩個值用來表示事物的狀態(tài),它們必居其一。通過測量布爾值可以判斷是否執(zhí)行某個步驟。

4、字符型常量

字符型常量是一個單一的字符,其形式是由兩個單引號引起來的一個字符。但是兩個單引號引起來的不能是單引號和反斜杠,即‘’和‘\’是不正確的寫法。

大家一定要記住,Java語言中的字符是16位的Unicode字符,這與C/C++等語言是不一樣的。

字符串常量

字符串常量是由雙引號引起來的一系列字符,與C/C++語言中不同的是,Java語言中的字符串不是通過字符數(shù)組來實(shí)現(xiàn)的,而是通過字符串類(即String類)來實(shí)現(xiàn)的。

四、變量和數(shù)據(jù)類型

在Java中,數(shù)據(jù)的類型可以分為四種:基本數(shù)據(jù)類型、數(shù)組類型、類和接口類型。任何數(shù)據(jù)都一定是上述數(shù)據(jù)類型的一種。
其中基本數(shù)據(jù)類型可以分為四大類:布爾型、字符型、整數(shù)型和浮點(diǎn)型。這些類型的數(shù)據(jù)與前面介紹的常量的類型基本相同,在此不再多說。下面將整數(shù)型和浮點(diǎn)型變量的取值范圍列出:

表一、

類型 寬度 取值范圍
byte 8位 -256到256
short 16位 -32768到32767
int  32位  -2147483648到2147483647
long  64位  -9223372036854775808到9223372036854775807

表二、

進(jìn)制  整數(shù) 長整數(shù)
十進(jìn)制 ***正整數(shù) 2147483647(2的31次方減1) 923372036854775807L(2的63次方減1)
八進(jìn)制 ***正整數(shù) 077777777777(2的31次方減1) 07777777777777777777L(2的63次方減1)
二進(jìn)制 最小負(fù)整數(shù) 020000000000(-2的31次方) 04000000000000000000L(-2的63次方)
十六進(jìn)制 ***正整數(shù) 0x7fffffff(2的31次方減1) 0x7fffffffffffffffL(2的63次方減1)
十六進(jìn)制 最小負(fù)整數(shù)  0x80000000(-2的31次方) 0x8000000000000000L(-2的63次方)

浮點(diǎn)數(shù)能表示的數(shù)值從小到大分別是:負(fù)無窮大、負(fù)有限值、負(fù)零、正零、正有限值及正無窮大。其中正零和負(fù)零在進(jìn)行數(shù)值比較的時候是相等的,但仍有辦法分辨這兩個值,例如在進(jìn)行1.0/0.0的時候會得到正無窮大的結(jié)果。其它非零非無窮大的有限值是以s*m*(2^e)來表示的,s和m的取值范圍見下表:

表三、

類型 s  m
float +1或-1  小于2的24次方的正整數(shù)  149到104的整數(shù) 
double +1或-1  小于2的53次方的正整數(shù)  1045到1000的整數(shù)

與C/C++語言中不同的是,在Java語言中,所有的基本數(shù)據(jù)類型都有預(yù)設(shè)值,就是說當(dāng)我們聲明一個變量時,即使我們沒有對它賦值,它的值也是一定的,而不像在C/C++中那樣是不可預(yù)測的。

五、Java與C/C++的比較

由于Java的語法直接來源于C/C++,所以Java的程序控制語句與C/C++一模一樣,在此不再多說。以下重點(diǎn)介紹一下Java與C/C++的不同。

指針

大家在使用C語言編程的時候想必都曾經(jīng)因為指針的復(fù)雜計算而煩惱,在C/C++語言編程過程中,指針可能引起許多錯誤,這些復(fù)雜的指針?biāo)惴ㄋa(chǎn)生的錯誤常常讓人迷惑不解,導(dǎo)致C/C++程序員在此浪費(fèi)了大量的時間??紤]到這種原因,Java中取消了指針。指針的功能由參考(reference)所取代,這使得Java中對復(fù)雜數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)更加容易,因為用對象和對象數(shù)組實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)結(jié)構(gòu)更可靠。

函數(shù)

在Java中沒有C/C++中應(yīng)用廣泛的函數(shù),C/C++中通過函數(shù)實(shí)現(xiàn)的功能在Java中都是通過類和方法來實(shí)現(xiàn)的。

繼承

C++支持多重繼承,這是一個從多個父類中派生一個類的有效辦法,但這種派生很復(fù)雜,也很容易產(chǎn)生問題。因此,Java中沒有采用多重繼承,但Java的Objective C協(xié)議接口能完成C++中多重繼承的所有功能。

goto語句

大家知道,在使用高級語言編程時過多的使用goto語句會使程序變得十分混亂,因此Java中也沒有使用goto語句。但是不可否認(rèn),當(dāng)程序比較容易控制的時候,適當(dāng)使用goto語句能使程序的運(yùn)行更快捷,因此Java中使用了多重break和continue語句(允許break和continue語句使用標(biāo)簽)實(shí)現(xiàn)C++種goto語句的功能。

聯(lián)合和結(jié)構(gòu)

在C++中有三種數(shù)據(jù)結(jié)構(gòu):聯(lián)合、結(jié)構(gòu)和類;Java中只有類,它可以實(shí)現(xiàn)上述三者的功能。

字符串

在C/C++中,字符串是通過字符數(shù)組實(shí)現(xiàn)的,但是由于數(shù)組的空間不是動態(tài)分配的,這容易出現(xiàn)越界錯誤,例如:常有預(yù)先設(shè)定的字符數(shù)組不能容納后輸入的字符串。在Java中,字符串是一類特定的對象,這使得字符串更具有一致性和可預(yù)見性。

Typedef、Define和預(yù)處理器

Java中不需要#define語句、預(yù)處理器或者typedef,但需要頭文件。在Java中一個類的信息必須包含在一個文件中,而C/C++中有關(guān)類的信息可能分散在多個文件中。

數(shù)據(jù)類型的自動強(qiáng)制轉(zhuǎn)換

在Java中強(qiáng)制一種類型的數(shù)據(jù)元素變成一種不太精確的數(shù)據(jù)類型需要編程人員采用預(yù)測方法。

希望通過以上內(nèi)容的介紹,能夠給你帶來幫助。

責(zé)任編輯:于鐵 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2019-11-07 09:20:29

Java線程操作系統(tǒng)

2011-07-21 08:43:38

2009-06-22 09:23:18

事件監(jiān)聽器

2017-07-18 10:14:23

OracleMerge into教程

2011-06-30 10:49:27

2011-06-30 10:36:22

JSF

2016-08-31 14:01:31

MySQL存儲數(shù)據(jù)庫

2017-09-19 14:53:37

Java并發(fā)編程并發(fā)代碼設(shè)計

2012-03-09 10:44:11

Java

2009-07-06 13:29:09

Servlet教程

2021-03-10 15:59:39

JavaSynchronize并發(fā)編程

2011-06-08 15:21:18

多維數(shù)組

2025-06-18 08:10:00

Java并發(fā)編程開發(fā)

2011-07-05 14:42:46

java

2011-04-14 10:38:58

Java編程Java

2020-05-29 07:20:00

Java8異步編程源碼解讀

2009-07-24 09:20:15

數(shù)組實(shí)例

2020-07-06 08:03:32

Java悲觀鎖樂觀鎖

2009-06-17 11:23:00

Java多線程

2010-06-11 09:01:02

.NET 4并行編程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號