關鍵字也稱爲保留字,是指java語言中規定了特定含義的標示符。對於保留字,用戶只能按照系統規定的方式使用,不能自行定義。Java中有50個經常使用關鍵字:java
if: 表示條件判斷,通常用法if(關係表達式),後跟else或{……}c++
else: 條件轉折,如if (關係表達式){語句塊1}else{語句塊2},若是關係表達式的值爲true,則執行語句塊1,不然執行語句塊2.安全
do……while……:do和while通常一塊兒使用,用於表示循環語句。do{……}while(關係表達式)……;當關系表達式的值爲true是繼續循環。函數
for:用於表示循環,for循環是最常使用的循環,格式for(表達式a; 表達式b; 表達式c)括號裏面的書一般用於控制循環的次數,通常會用一個int類型的變量類計數,如(int i=0; i<10; i++)表達式a用於流程控制的開始值,表達式b表示循環終止條件,表達式c用於計數。性能
switch(條件a)case……:switch和case合起來用於表示條件分支流程。如: while(int c) { case 1: {語句塊1} case 2: {語句塊2} ……?????? …… case n: {語句塊n} default:exit(0); }學習
若是c爲1,則執行語句塊1;若是c爲2,則執行語句塊2;以此類推,若是c爲n,則執行語句塊n。default表示除case之外出現的狀況。this
default:在switch……case……分支語句可知,default是在全部case條件下都不成立時使用。用於包表示s「rc」文件夾下的當前包;若是用於類,表示只可被本文件內的其它類訪問。spa
continue:用於跳出本次循環,而break跳出本層循環。Break和continue能夠實現相似於C\C++中goto語句的用法: label0: { for (int k = 0; k < 10; k++) { .......... label1: for (int j = 0; j < 10; j++) { ................ break label0; //跳轉至label0 } ........... label2: for (int kk = 0; kk < 10; kk++) { .............. break label0; //跳至label2線程
} }
return:返回一個值,一般用於函數中,返回一個具備特定類型的值。如:
public int fuction()
{
int a;
……
return a;//返回int型的值
}
try……catch……finally……:用於異常處理,使用形式如:
try{ …… }catch(類型b){ …… }finally{ …… }
try{……}中放置可能會發生異常的的語句塊,catch(){……}用於抓住異常,{}定義當出現異常時的處理方法。finally{……}表示無論異常是否發生,都得進行finally{}中的處理。
範圍 | 本類 | 同軟件包 | 不一樣包中子類 | 不一樣包且無繼承 | 做用(含義) |
public | 能夠 | 能夠 | 能夠 | 能夠 | 公有的 |
protect | 能夠 | 能夠 | 能夠 | 受保護的 | |
default(無權限修飾符) | 能夠 | 能夠 | 當前的 | ||
private | 能夠 | 私有的 |
如:
一個".java"後綴名的文件裏面只能一個publi型的cass類。如c13.swing包下有HelloWorld.java 文件,該文件下有以下代碼: package c13.swing; public class HelloWorld { public void show() { System.out.println("HelloWorld!"); } } 在default包下有以下代碼: import c13.swing.*;//引入所須要的包裏的全部類 public class Test { public static void main(String args[]) { HelloWorld h = new HelloWorld(); h.show(); } } 此時運行正常,結果:HelloWorld! 若是把public class HelloWorld改爲privateclass HelloWorld則會運行錯誤,由於private是私有的不能被其餘包內的對象所引用。
final:(相似於C++中的const),用法以下: a,final的變量的值不能被改變;1),final的成員變量; 2)final的局部變量; b,final的方法不能被重寫; c,final的類不能被繼承。
strictfp:意思是FP-strict,也就是說精確浮點的意思。在Java虛擬機進行浮點運算時,若是沒有指定strictfp關鍵字時,Java的編譯器以及運行環境在對浮點運算的表達式是採起一種近似於我行我素的行爲來完成這些操做,以至於獲得的結果每每沒法令你滿意。而一旦使用了strictfp來聲明一個類、接口或者方法時,那麼所聲明的範圍內Java的編譯器以及運行環境會徹底依照浮點規範IEEE-754來執行。所以若是你想讓你的浮點運算更加精確,並且不會由於不一樣的硬件平臺所執行的結果不一致的話,那就請用關鍵字strictfp。 你能夠將一個類、接口以及方法聲明爲strictfp,可是不容許對接口中的方法以及構造函數聲明strictfp關鍵字,例以下面的代碼:
1. 合法的使用關鍵字strictfp strictfp interface A {}
public strictfp class FpDemo1 { strictfp void f() {} } 2. 錯誤的使用方法 interface A { strictfp void f(); }
public class FpDemo2 { strictfp FpDemo2() {} }
一旦使用了關鍵字strictfp來聲明某個類、接口或者方法時,那麼在這個關鍵字所聲明的範圍內全部浮點運算都是精確的,符合IEEE-754規範的。例如一個類被聲明爲strictfp,那麼該類中全部的方法都是strictfp的。
abstract:抽象的意思,能夠用定義抽象類,抽象函數。抽象類的用法規則以下: a,用abstract關鍵字來修飾一個類時,這個類叫作抽象類;用abstract來修飾一個方法時,這個方法叫作抽象方法; b,含有抽象方法的類必須被聲明爲抽象類,抽象類必須被繼承,抽象方法必須被重寫; c,抽象類不能被實例化; d,抽象方法只需聲明,而不需實現。
transient: Java語言的關鍵字,用來表示一個域不是該對象串行化的一部分。當一個對象被串行化的時候,transient型變量的值不包括在串行化的表示中,然而非transient型的變量是被包括進去的。 使用對象:字段 介紹:字段不是對象持久的一部分,不該該字段和對象一塊兒串起。
synchronized:鎖定當前對象,在執行當前這個對象時不該許其餘線程打斷插入。使用的方式有:
這是我在暑假學習作的筆記
(1),class Timer { private static int num = 0; public synchronized void add(String name) { //執行這個方法的過程當中鎖定當前對象。 num ++; try { Thread.sleep(1); } catch( InterruptedException e) { return; } System.out.println(name + ",你是第" + num +"使用Timer的線程。"); } } (2),class Timer { private static int num = 0; public void add(String name) { synchronized(this) { //鎖定大括號這個區域的代碼段 num ++; try { Thread.sleep(1); } catch( InterruptedException e) { return; } System.out.println(name + ",你是第" + num +"使用Timer的線程。"); } } }
volatile:volatile變量一個時間只有一個線程能夠訪問。 保證線程安全。 能夠被寫入 volatile 變量的這些有效值獨立於任何程序的狀態,包括變量的當前狀態。 因此,Volatile 變量是一種很是簡單但同時又很是脆弱的同步機制,它在某些狀況下將提供優於鎖的性能和伸縮性。
native:是用做java 和其餘語言(如c++)進行協做時用的也就是native 後的函數的實現不是用java寫的, native的意思就是通知操做系統,這個函數你必須給我實現,由於我要使用。因此native關鍵字的函數都是操做系統實現的, java只能調用。
import:引入報名,用法: a,寫全包名:jsxt.java140.Cat c = new com.bjsxt.java140.Cat a,引入一個包中的具體某個對象:xt.java140.Cat; b,引入一個包中的全部象:import com.bjsxt.java140.Cat.*;
null:表示空值,若是是對象,則表示此對象爲空,若是是數據類型,在表示相應數據類型的默認值,如int的默認值爲0。
goto:C\C++中實現無條件轉向語句,爲告終構化程序設計java中如今通常不用。
const:和const同樣,在Java中,const是做爲保留字以備擴充。能夠用final替換const,通常C++中用const,java中用final。