Java基礎(chǔ)之編譯異常和運(yùn)行異常
一、getProperties()方法
1.System類提供一個(gè)getProperties()方法用來(lái)獲取當(dāng)前系統(tǒng)的全部屬性,它會(huì)返回一個(gè)Properties對(duì)象,也封裝了系統(tǒng)的全部屬性,這些屬性的存在是以鍵值對(duì)的形式。
2.getProperties()方法使用例子:
- public class p55 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- //獲取當(dāng)前系統(tǒng)的屬性
- Properties p=System.getProperties();
- System.out.println("Java的運(yùn)行環(huán)境版本:"+p.getProperty("java.version"));
- System.out.println("Java安裝目錄"+System.getProperty("java.home"));
- System.out.println("操作系統(tǒng)的構(gòu)架:"+p.getProperty("os.arch"));
- System.out.println("用戶的國(guó)家:"+p.getProperty("user.country"));
- System.out.println("用戶的賬戶名稱:"+p.getProperty("user.name"));
- System.out.println("用戶的當(dāng)前工作目錄:"+p.getProperty("user.dir"));
- System.out.println("Java類路徑:"+p.getProperty("java.class.path"));
- }
- }
運(yùn)行的結(jié)果是:
二、public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法
1.public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法是表示一個(gè)數(shù)組的元素復(fù)制到另一個(gè)數(shù)組,它的參數(shù)作用如下所示:
Object src:表示源數(shù)組;
int srcPos:表示源數(shù)組復(fù)制的起始位置;
Object dest:表示目的數(shù)組;
int destPos:表示復(fù)制目標(biāo)數(shù)組的起始位置;
int length:表示復(fù)制的長(zhǎng)度或元素的個(gè)數(shù);
2.實(shí)現(xiàn)數(shù)組元素復(fù)制到另一個(gè)數(shù)組例子
- public class p56 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- //表示源數(shù)組
- String current[]={"Java","C語(yǔ)言","MYSQL","Python","PHP"};
- //表示目標(biāo)數(shù)組
- String goal[]={"HTML5","Vue.js","JavaScript","IOS","Java EE"};
- //復(fù)制數(shù)組的元素
- System.arraycopy(current, 1, goal, 2, 3);
- //遍歷數(shù)組中的元素
- for(String s:goal){
- System.out.println(s);
- }
- }
- }
運(yùn)行的結(jié)果為:
三、編譯異常
1.在我們程序開發(fā)當(dāng)中,經(jīng)常會(huì)在程序編譯時(shí)產(chǎn)生一些異常也就是bug,我們需要處理這些異常,這個(gè)就是編譯異常。
2.編譯異常特點(diǎn)是java程序在編譯器進(jìn)行檢查,如果程序出現(xiàn)了異常就一定要處理這些異常,否則程序不能編譯。
3.處理編譯異常有兩種處理方式:
①使用try...catch語(yǔ)句進(jìn)行對(duì)異常進(jìn)行捕獲的方式;
②使用throws關(guān)鍵字聲明拋出的異常,調(diào)用時(shí)并對(duì)它進(jìn)行處理;
四、運(yùn)行異常
1.在java程序運(yùn)行時(shí)產(chǎn)生的異常,這種異常它不編寫異常處理,但它還可以進(jìn)行編譯,這個(gè)就是運(yùn)行異常。
2.運(yùn)行異常特點(diǎn)是java編譯器不會(huì)進(jìn)行檢查,在程序出現(xiàn)這樣的異常,沒(méi)有使用try...catch語(yǔ)句或throws關(guān)鍵字聲明拋出,該程序也可以編譯。運(yùn)行異常主要是程序中的邏輯不對(duì),程序在運(yùn)行沒(méi)辦法恢復(fù)這個(gè)異常。
3.數(shù)組的下標(biāo)訪問(wèn)數(shù)組元素,當(dāng)超過(guò)數(shù)組的下標(biāo)值就會(huì)引起運(yùn)行異常,我們通過(guò)下面的例子看一下:
- public class p66 {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- int arr[]=new int[3];
- System.out.println(arr[4]);
- }
- }
運(yùn)行的結(jié)果是:
從上面的代碼中,數(shù)組的長(zhǎng)度為3,因?yàn)橄聵?biāo)是從0開始,所以最大下標(biāo)是2,當(dāng)訪問(wèn)arr[4]數(shù)組就會(huì)出現(xiàn)運(yùn)行的異常數(shù)組下標(biāo)越界了。
五、總結(jié)
本文主要介紹了getProperties()方法、public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法、編譯異常和運(yùn)行異常。
getProperties()方法是獲取當(dāng)前系統(tǒng)的全部屬性,它會(huì)返回一個(gè)Properties對(duì)象,也封裝了系統(tǒng)的全部屬性,這些屬性的存在是以鍵值對(duì)的形式。
public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法是表示一個(gè)數(shù)組的元素復(fù)制到另一個(gè)數(shù)組,理解里面參數(shù)作用。了解編譯異常是在程序編譯產(chǎn)生的一些bug,我們需要處理這些異常,這就是編譯異常。
在java程序運(yùn)行時(shí)產(chǎn)生的異常,這種異常它不編寫異常處理,但它還可以進(jìn)行編譯,這個(gè)就是運(yùn)行異常。希望大家通過(guò)本文的學(xué)習(xí),對(duì)你有所幫助!
我是Java進(jìn)階者,希望大家通過(guò)本文的學(xué)習(xí),對(duì)你有所幫助!