java基礎加強
1.workspace與project。
workspace工作區間,project一個專案工程。
2.Perspective與view。
Persperctive是透檢視。view是檢視。每一個小視窗就是檢視,若干個不同的小視窗集合在一起就是透檢視。
3.設定整個workspace的javac與java。
設定整個workspace的javac,Window-Preferences(喜好)-Java-Compiler(編譯,題外話“程式設計師經常用到的javac中的c也是這個單詞,compoler”):Compiler compliance level選項
設定整個workspace的java,Window-Preferences(喜好)-Java-Installed JREs(安裝過的JREs(java runtime environment ,java執行時環境))
4.設定單個工程的javac與java
設定單個工程的javac,滑鼠右鍵單擊專案工程名-Properties(屬性)-Java Compiler(編譯):Compiler compliance level選項
設定單個工程的java,滑鼠右鍵單擊專案工程名-Properties(屬性)-Java Build Path-右邊檢視的上方Libraries;或者滑鼠右鍵單擊專案工程名-Build Path-Confugure Build Path…-右邊檢視的上方Libraries
4-1.高版本的java能否執行低版本的javac編譯的程式?
能(原因是:開發軟體版本一般都是向下相容,向上不考慮的。)
4-2.低版本的java能否執行高版本的javac編譯的程式?
不能(原因是:開發軟體版本一般都是向下相容,向上不考慮的。)
5.快捷鍵的繫結與程式碼模板
繫結快捷鍵:Window-Preference(喜好)-General(一般)-雙擊Keys(快捷鍵)。想知道更詳細的同學請參看視訊: “張孝祥Java基礎加強第一部分03小節”
程式碼模板的製作:Window-Preference(喜好)-Java-Editor(編輯)-Templates(模板)-New。想知道更詳細的同學請參看視訊: “張孝祥Java基礎加強第一部分06小節”
6.切換工作區間(工作臺)的小操作,File-Switch(選擇) Workspace(工作區間)
7.小知識:許多個java包集合在一起就叫做java庫。
8.普通的import語句可以匯入一個類或某個包中的所有類。
9.import static語句匯入一個類中的某個靜態方法或所有靜態方法
關於靜態匯入的好處,與壞處。請參照http://macrob.blog.163.com/blog/static/20382818720122152294480/
import static java.lang.Math.max;
/**
* 一般正常寫法
*/
// System.out.println(Math.max(3, 6));
// System.out.println(Math.abs(3 – 6));
/**
* 不想寫類名,想直接用方法名,就要用到靜態匯入,靜態匯入是JDK5.0的新特性
*/
System.out.println(max(3, 6));
System.out.println(abs(3 – 6));//這方法編譯報錯
10.一個大公司的面試題:說說overload(過載)與override(重寫)的區別
過載定義:在一個類定義中,可以編寫幾個同名的方法,但是隻要它們的簽名引數列表,和引數列表順序不同,Java就會將它們看做唯一的方法。簡單的說,一個類中的方法與另一個方法同名,但是參數列和引數順序不同,這種方法稱之為過載方法。過載仍符合多型定義——通過單一標識支援不同特定行為的能力,只是過載屬於靜態多型,而不是通過繼承和虛擬函式實現的動態多型。過載(overload)和多型無關,真正和多型相關的是覆蓋(inheritance)。過載只是一種語言特性,是一種語法規則,與多型無關,與物件導向也無關。不過針對所謂的第二種過載,有一個專門的名詞–重寫或重定義。
上程式碼:
public void test1(int x,int y){//——–1——— }
public void test1(int x,int y,int z){//——–2———}
public void test1(int x,String y){//——–3——— }
public void test1(String y,int x){//——–4——— }
public String test1(int x,int y){//——–5——— return null; }
1,2引數數量不同;1,3引數型別不同;3,4引數順序不同;這些情況都算過載。
1,5返回值型別不同;這情況不算過載。
重寫定義:通常,派生類繼承基類的方法,因此,在呼叫物件繼承方法的時候,呼叫和執行的是基類的實現.但是,有時需要對派生類中的繼承方法有不同的實現.
上程式碼:
public class Animal {
public void run(){
System.out.println(“我是動物我會跑!”);
}
public static void main(String[] args){
//這裡有個知識點,就是里氏代換原則(看不懂的同學,請多多百度或google)
//例項化一個動物類
Animal animal = new Animal();
//例項化一個馬類
Animal horse = new Horse();
//例項化一個雞類
Animal chicken = new Chicken();
//例項化一個鳥類
Animal bird = new Bird();
animal.run();
horse.run();
chicken.run();
bird.run();
}
}
//一個方法有@Override,一個方法沒有@Override,在這我不給答案,各位同學自己想想哈
class Horse extends Animal{
@Override
public void run(){
System.out.println(“我是馬,我繼承了動物類,重寫了run方法,我用四條腿跑!”);
}
}
class Chicken extends Animal{
public void run(){
System.out.println(“我是雞,我繼承了動物類,重寫了run方法,我用二條腿跑!”);
}
}
class Bird extends Animal{
}
輸出結果:
我是動物我會跑!
我是馬,我繼承了動物類,重寫了run方法,我用四條腿跑!
我是雞,我繼承了動物類,重寫了run方法,我用二條腿跑!
我是動物我會跑!
3-1.當基類(也就是父類)被重寫的方法作用域為public時,方法可以被重寫
3-2.當基類(也就是父類)被重寫的方法作用域為protected時,方法可以被重寫
3-3.當基類(也就是父類)被重寫的方法作用域為private時,方法不可以被重寫
他們的區別:過載與重寫的區別就在於是否覆蓋,重寫一般多發生在不同的類且存在繼承關係之間,而過載多是在一個類裡或者一塊程式碼段裡。
11.有一個寫法public void show(int x,int … args){
}
其中的int … args寫法為可變引數寫法,在做東西的時候會有用的,想知道詳細的同學請參看視訊: “張孝祥Java基礎加強第一部分09小節”
有什麼好與不好的請大家多給給意見哈!
相關文章
- java基礎(三) 加強型for迴圈與IteratorJava
- Java基礎加強筆記——測試、反射、註解Java筆記反射
- JavaWEB開發18——基礎加強JavaWeb
- JAVA面試 基礎加強與鞏固:反射、註解、泛型等Java面試反射泛型
- Go 基礎鞏固加強-1.0-指標Go指標
- JAVA基礎--增強for迴圈Java
- JAVA基礎加強篇12——單元測試、反射、註解、動態代理Java反射
- 第二章 java基礎(加運算子)Java
- 你強任你強,我幹我本行——Java基礎(下)Java
- 你強任你強,我幹我本行——Java基礎(中)Java
- 你強任你強,我幹我本行——Java基礎(上)Java
- HTML5基礎加強css樣式篇(color,direction)(二)HTMLCSS
- 零基礎參加java培訓哪家機構好Java
- 零基礎參加Java培訓班合適嗎Java
- 零基礎參加java培訓主要學什麼Java
- C#基礎加強三:Dispose() 和 Close() 和 Finalize() 的區別C#
- 農村電商交易額三年增85.6% 基礎設施待加強
- Java如何打好牢固的基礎?有必要參加長沙Java培訓嗎?Java
- Java基礎-語法基礎Java
- HTML5基礎加強css樣式篇(多媒體選擇器)(十七)HTMLCSS
- 參加Java培訓好不好?零基礎可以學嗎?Java
- JAVA 基礎Java
- 【Java基礎】Java
- java基礎Java
- [Java基礎]Java
- Java 基礎02Java程式設計基礎Java程式設計
- java基礎-java NIOJava
- Java基礎-物件導向基礎Java物件
- 零基礎參加java培訓的系統學習路線Java
- Java SE 8 在併發工具方面的加強Java
- 【Java基礎】--深入剖析基礎語法Java
- Scanner——Java基礎Java
- Java 反射基礎Java反射
- 【Java基礎】ServletJavaServlet
- java基礎(四)Java
- Java基礎篇Java
- Java基礎(1)Java
- java基礎1Java