好程式設計師大資料培訓分享大資料面試寶典一

好程式設計師發表於2020-05-14

  好程式設計師大資料培訓分享大資料面試寶典一第一部分:Java 語言基礎

  1 、物件導向的特徵有哪些方面 ?

  1) 抽象:抽象就是忽略一個主題中與當前目標無關的那些方面,以便更充分地注意與當前目標有關的方面。抽象並不打算了解全部問題,而只是選擇其中的一部分,暫時不用部分細節。抽象包括兩個方面,一是過程抽象 , 二是資料抽象。

  2) 繼承:繼承是一種聯結類的層次模型,並且允許和鼓勵類的重用,它提供了一種明確表述共性的方法。物件的一個新類可以從現有的類中派生,這個過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那裡繼承方法和例項變數,並且類可以修改或增加新的方法使之更適合特殊的需要。

  3) 封裝:封裝是把過程和資料包圍起來,對資料的訪問只能透過已定義的介面。物件導向計算始於這個基本概念,即現實世界可以被描繪成一系列完全自治、封裝的物件 , 這些物件透過一個受保護的介面訪問其他物件。

  4) 多型性:多型性是指允許不同類的物件對同一訊息作出響應。多型性包括引數化多型性和包含多型性。多型性語言具有靈活、抽象、行為共享、程式碼共享的優勢,很好的解決了應用程式函式同名問題。

  2 、作用域 public,private,protected, 以及不寫時的區別?

  答:區別如下:

  作用域   當前類   同包 子孫類   其他

  public  √      √  

  protected          √     √   ×

  default  √      ×   ×

  private  √   ×    ×   ×

  不寫時預設為default

  3 String 是最基本的資料型別嗎 ? 【基礎】

  答:不是。

  4 float float f=3.4 是否正確 ? 【基礎】

  答: 不正確;

  精度不準確, 應該用強制型別轉換,如下所示: float f=(float)3.4

  或者使用 float f = 3.4f;

  5 、語句 float f=1.3 ;編譯能否透過?【基礎】

  答: 不能;

  應該用強制型別轉換,如下所示:float f=(float)1.3

  或者使用 float f = 1.3f;

  6 short s1 = 1; s1 = s1 + 1; 有什麼錯 ?

  short s1 = 1; s1 += 1; 有什麼錯 ? 【基礎】

  答:short s1 = 1; s1 = s1 + 1;s1+1 運算結果是 int 型,需要強制轉換型別; short s1 = 1; s1 += 1; 可以正確編譯 , 自動型別提升。

  7 Java 有沒有 goto? 【基礎】

  答:goto java 中的保留字,現在沒有在 java 中使用。

  8 int Integer 有什麼區別 ? 【基礎】

  答:Java 提供兩種不同的型別:引用型別和原始型別(或內建型別);

  int java 的原始資料型別, Integer java int 提供的封裝類。

  Java 為每個原始型別提供了封裝類:

  原始型別: boolean,char,byte,short,int,long,float,double

  封裝型別:Boolean Character Byte Short Integer Long Float Double

  引用型別和原始型別的行為完全不同,並且它們具有不同的語義。引用型別和原始型別具有不同的特徵和用法,它們包括:大小和速度問題,這種型別以哪種型別的資料結構儲存,當引用型別和原始型別用作某個類的例項資料時所指定的預設值。物件引用例項變數的預設值為null ,而原始型別例項變數的預設值與它們的型別有關。

  9 & && 的區別?【基礎】

  答:& 是位運算子,表示按位與運算, && 是邏輯運算子,表示邏輯與( and )。

  10 、簡述邏輯操作 (&,|,^) 與條件操作 (&&,||) 的區別?【基礎】

  答:區別主要有兩點:

  a. 條件操作只能操作布林型的 , 而邏輯操作不僅可以操作布林型 , 而且可以運算元值型

  b. 邏輯操作不會產生短路。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2692101/,如需轉載,請註明出處,否則將追究法律責任。

相關文章