Q1. 內部類別(InnerClass)和子類別(SubClass)之間的區別是什麼?
A: 內部類別是崁入在另一個類別之中的類別,並且有存取所有外部類別的方法和變數的權限
子類別是繼承自另一個類別(父類別). 並且可以存取父類別的public 和protected存取修飾子的
方法和欄位.
Q2. Java的存取修飾子有哪些?
A:
public : 類別的方法,欄位,和類別本身 , 在程式碼的任何地方皆可存取.
protected: 類別的方法和欄位, 只有在package內或是package外的子類別才可以使用.
default(無任何修飾子) : 類別的方法和欄位只有在package內部的類別使用.
private: 類別的方法和欄位只有在類別本身內才可以使用.
Q3. 靜態(static)方法和變數的目的是甚麼?
A: 當有多個物件需要共享方法和變數的時候 , 可以宣告為static . 但是要注意 , 因為宣告為static
之後 , 變數只有一份拷貝 , 因此任一此類別的物件都可更改變數值 , 如果不想要此靜態變數值
被改變, 可在前面加上final關鍵字.
Q4. 甚麼是資料封裝 , 它的重要性是甚麼?
A: 封裝可以把物件的屬性和方法隱藏在物件內部 , 只能透過物件的公開方法加以存取 , 達到
資料隱藏的目的. 良好的封裝可以增加程式碼的模組化能力, JavaBean的使用, 就是一個非常好
的例子. 物件間彼此獨立不相關 , 但是卻可透過公開介面使用彼此提供的功能.
之後 , 變數只有一份拷貝 , 因此任一此類別的物件都可更改變數值 , 如果不想要此靜態變數值
被改變, 可在前面加上final關鍵字.
Q4. 甚麼是資料封裝 , 它的重要性是甚麼?
A: 封裝可以把物件的屬性和方法隱藏在物件內部 , 只能透過物件的公開方法加以存取 , 達到
資料隱藏的目的. 良好的封裝可以增加程式碼的模組化能力, JavaBean的使用, 就是一個非常好
的例子. 物件間彼此獨立不相關 , 但是卻可透過公開介面使用彼此提供的功能.
Q5. 甚麼是獨體類別(Singleton Class) , 舉出一個實際的使用案例?
A: 獨體類別 , 顧名思義, 它只可以有一個實體, 無法創建出第二個.
常用的例子是資料庫的連線, 我們只希望透過一個實體,對資料庫連線, 不希望創建出多個實體
做資料庫連線的時候使用.
Q6. 描述Java的三種迴圈種類?
A:
1. For 迴圈 :
用在知道要重複執行多少次的時候.
2. While 迴圈 :
用在某條件預先滿足的前提下 , 持續不斷的重複執行的時候.
3. Do.While 迴圈:
和While迴圈很類似.,但是不同的地方在於, Do.While迴圈會在每次執行結束後,做條件的 判 斷
因此最少會執行一次..
Q7. 如何寫Java無限迴圈?
A:
For (;;)
Q8. continue和 break敘述式 , 不同點在哪裡?
A:
1. break :
執行迴圈若遇到break敘述 , 迴圈會立刻結束.
2. continue :
執行迴圈若遇到continue敘述 , 則continue以後的程式碼會跳過 , 直接執行下一個迴圈的判斷.
如下:
public static void main(String[]args){
for(int i = 0 ; i < 3 ; i++){
if(i == 2)
break;
if(i == 0){
continue;
}
System.out.println(i);
}
}
Q9. double和 float變數 , 在Java的不同點是?
Q10. 甚麼是final關鍵字, 請舉例?
A:
float占用4bytes的記憶體空間, double占用8bytes記憶體空間. float是單精確度十進位數字,double是倍精確度浮點數.
Q10. 甚麼是final關鍵字, 請舉例?
A:
Java利用final關鍵字來宣告常數. final宣告的變數值 , 一旦被賦予值之後 , 便不可再改變或賦值.
private final int PI = 3.14 , 是以final來宣告圓周率為常數的例子.
當方法前面加上final宣告 , 此方法便不可再被子類別所覆寫.
當類別被宣告為final , 此類別便無法繼承. 好比String, Integer , 和其他的包裹類別(Wrapped Class)
寶寶命名網
private final int PI = 3.14 , 是以final來宣告圓周率為常數的例子.
當方法前面加上final宣告 , 此方法便不可再被子類別所覆寫.
當類別被宣告為final , 此類別便無法繼承. 好比String, Integer , 和其他的包裹類別(Wrapped Class)
寶寶命名網
沒有留言:
張貼留言