7. Java 編程:打印昨天的當前時刻
- 使用Calendar對象方法Calendar.getInstance()獲得當前時間难裆;
- 使用Calendar.DATE獲得天數(shù)屬性瘟裸;
- 使用Calendar.add((int field, int amount))方法獲得前天時間;
package com.senchen.test;
import java.util.Calendar;
public class A {
public static void main(String[] args) {
Calendar calendar=Calendar.getInstance(); //獲得當前時間
System.out.println(calendar.getTime());
calendar.add(Calendar.DATE, -1); //獲得當前天數(shù)丘喻,減1
System.out.println(calendar.getTime());
}
}
8. java 和javasciprt 的區(qū)別
1)基于對象和面向?qū)ο?/h3>
Java 是一種真正的面向?qū)ο蟮恼Z言脯宿,即使是開發(fā)簡單的程序,必須設計對象泉粉;
JavaScript 是種腳本語言连霉,它可以用來制作與網(wǎng)絡無關的,與用戶交互作用的復雜軟件嗡靡。它是一種基于對象(Object Based)和事件驅(qū)動(Event Driver)的編程語言跺撼。因而它本身提供了非常豐富的內(nèi)部對象供設計人員使用;
2)解釋和編譯
Java 的源代碼在執(zhí)行之前讨彼,必須經(jīng)過編譯歉井;
JavaScript 是一種解釋性編程語言,其源代碼不需經(jīng)過編譯点骑,由瀏覽器解釋執(zhí)行酣难;
3)強類型變量和類型弱變量:
Java 采用強類型變量檢查,即所有變量在編譯之前必須作聲明黑滴;
JavaScript 中變量聲明憨募,采用其弱類型。即變量在使用前不需作聲明袁辈,而是解釋器在運行時檢查其數(shù)據(jù)類型菜谣;
4)代碼格式不一樣
9. 什么時候用assert(斷言)?
assert(斷言)
assertion(斷言)在軟件開發(fā)中是一種常用的調(diào)試方式晚缩,很多開發(fā)語言中都支持這種機制尾膊。一般來說,assertion 用于保證程序最基本荞彼、關鍵的正確性冈敛。assertion 檢查通常在開發(fā)和測試時開啟。為了提高性能鸣皂,在軟件發(fā)布后抓谴, assertion 檢查通常是關閉的。在實現(xiàn)中寞缝,斷言是一個包含布爾表達式的語句癌压,在執(zhí)行這個語句時假定該表達式為true;如果表達式計算為false荆陆,那么系統(tǒng)會報告一個Assertionerror滩届。
斷言的在MyEclipse中的簡單使用
斷言在默認情況下是禁用的,要在編譯時啟用斷言被啼,需使用source 1.4 標記:
javac -source 1.4 Test.java
要在運行時啟用斷言帜消,可使用-enableassertions 或者-ea 標記棠枉。
要在運行時選擇禁用斷言,可使用-da 或者-disableassertions 標記券犁。
測試:
package com.senchen.test;
public class A {
public static void main(String[] args) {
int a=0;
assert( a > 0); // throws an Assertionerror if a <= 0
}
}
默認不開斷言术健,運行不會報錯;
打開斷言
選擇菜單:run --> run Configurations
運行上面測試代碼后控制臺顯示Assertionerror:
10. Java 中的異常處理機制的簡單原理和應用
1) 異常
當JAVA 程序違反了JAVA 的語義規(guī)則時粘衬,JAVA 虛擬機就會將發(fā)生的錯誤表示為一個異常荞估。
2) 違反語義規(guī)則2 種情況。
一種是JAVA 類庫內(nèi)置的語義檢查稚新。
例如數(shù)組下標越界,會引發(fā)IndexOutOfBoundsException;訪問null 的對象時會引發(fā)NullPointerException勘伺。
另一種情況就是JAVA 允許程序員擴展這種語義檢查
程序員可以創(chuàng)建自己的異常,并自由選擇在何時用throw 關鍵字引發(fā)異常褂删。所有的異常都是java.lang.Thowable 的子類飞醉。
11. error 和exception 有什么區(qū)別?
error
表示系統(tǒng)級的錯誤和程序不必處理的異常,是恢復不是不可能但很困難的情況下的一種嚴重問題屯阀;比如內(nèi)存溢出缅帘,不可能指望程序能處理這樣的情況;
exception
表示需要捕捉或者需要程序進行處理的異常难衰,是一種設計或?qū)崿F(xiàn)問題钦无;也就是說,它表示如果程序運行正常盖袭,從不會發(fā)生的情況失暂。
12. try {}里有一個return 語句,那么緊跟在這個try 后的finally {}里的code會不會被執(zhí)行鳄虱,什么時候被執(zhí)行弟塞,在return 前還是后?
會執(zhí)行,在return前執(zhí)行拙已,finally {}里語句一定會執(zhí)行决记,因為return后整個try語句結束,所以在return前執(zhí)行倍踪。