【轉】Java百問

程序員常常能夠經過搜索或者記憶來完成代碼,可是許多時候並不真正理解爲何那樣寫。也就是說,有必定經驗的程序員不會犯一些低級的語法錯誤,可是由於不深刻理解有可能形成一些高級錯誤,好比說運行無效率,代碼難Debug,等等。下面是一些常見的理解性問題,每個問題儘可能用圖或代碼去描述。帶着問題去看有圖的內容是一種娛樂和消遣。內容所有來自「碼河網」(programcreek.com),包括基本語法、數組、集合類、泛型、面向對象、垃圾回收、異常控制、輸入輸出和內存。不斷更新,歡迎你們提出有趣味的問題和意見。html

  從Hello World中你能夠學到什麼?java

  如何建立本身的庫?程序員

  類如何初始化?web

  包和路徑面試

  –數據類型正則表達式

  關於double的一個常見問題算法

  String不變性?spring

  爲何String有不變性?express

  String是如何傳遞的?編程

  length vs length()

  什麼是null?

  –通用類和方法

  比較Comparator與Comparable

  hashCode()和equals()之間的協議

  –面向對象

  Overloading vs Overriding

  Fields能不能被Overridden?

  4種內部類

  什麼是內部接口?

  構造函數如何使用?

  訪問權限

  Private構造方法有什麼做用?

  – 異常處理

  異常處理介紹

  異常處理類結構

  – 文件

  一行一行讀取文件

  一行一行寫入文件

  – 多線程

  多線程對平常編程有什麼用?

  一個圖來演示Java處理多線程的原理

  join()

  notify()和wait()

  – Collections & Maps

  Collection和Map類以及接口

  比較不一樣的List

  比較不一樣的Set

  比較不一樣的Map

  怎樣寫一個有效率的計數器?

  HashMap經常使用的方法:循環,打印,按值排序

  什麼是類型擦除?

  爲何Java引進泛型Generics的概念?

  — 反射

  Java是值傳遞仍是址傳遞?爲何這樣設計

  爲何須要反射Reflection? (1)

  爲何須要反射Reflection? (2) Example List

  什麼是框架Framework?爲何處處都是它?

  Why need Web framework?

  — JVM

  什麼是JVM?

  JVM運行時是什麼樣子?

  垃圾收集器是如何工做的?

  簡單數據類型在內存中是什麼形式?

  數組在內存裏是什麼狀況?

  Java如何處理Aliasing?

  運行時對象在內存中是什麼樣的?

  什麼是內存泄漏?

  –有關應用的一些概念

  什麼是Servlet Container? Tomcat是什麼?

  爲何須要軟件測試?

  什麼是面向方面編程

  庫與框架的區別

  理解框架的一個小例子

  把jar轉化成exe

  – 一些理論問題

  循環與遞歸

  Java與計算機核心課程

  編譯器是如何工做的?

  8分鐘瞭解什麼是正則表達式

  怎樣用動態規劃方法計算兩字符串間的距離?

  – 一些庫的簡單示例

  Guava

  JSoup

  Spring

  Struts 2

  Swing

  Eclipse RCP

  –Top 10

  圖說Java

  數組10大經常使用方法

  String常見10大問題

  正則表達式常見10大問題

  異常處理常見10大問題

  Collection常見的10個問題

  Map常見的10個問題

  –推薦收藏

  Java經常使用庫彙總

  Java代碼實例查詢

  講故事理解設計模式

  對Java高級程序員有益的10大網站

  對Java高級程序員有益的10本書

  編程面試10大算法概念彙總

  優秀Java程序員博客彙總

相關文章
相關標籤/搜索