1. 程式人生 > >記一次失敗的面試經歷

記一次失敗的面試經歷

pub collect int 抽象 final 順序 多重 arr boolean

1. 前言

 前幾天,濟南的一家公司來我們學校進行校招。工作室的創始人在那家公司混的還不錯,本來人家公司並沒有把我們學校作為被招聘的學校,是我們工作室的創始人極力推薦才來我們學校進行招聘,但是我們學校不重視,導致沒有幾個人參加招聘會,去的基本上都是大三的,有老師的原因也有我們的原因。估計人家明年可能也不會來了,下面說下面試中我出現的問題(由於只參加了筆試,所以只說筆試)

2. 筆試題

一:接口和抽象類的區別?
抽象類
  1>用abstract關鍵字來修飾一個類時,這個類叫做抽象類;用abstract來修飾一個方法時,該方法叫做抽象方法。

  2>含有抽象方法的類必須被聲明為抽象類,抽象類必須被繼承,抽象方法必須被重寫。
  3>抽象類不能被實例化。
  4>抽象方法只需聲明,不需要實現。
接口
  1>接口是抽象方法和常量值的定義的集合
  2>從本質上講,接口是一種特殊的抽象類(可以不用寫abstract),這種抽象類中只包含常量和方法的定義,而沒有變量和方法的實現。
  3>接口的特性
   1)接口可以多重實現
   2)接口中聲明的屬性默認為public static final的,也只能是public static final的;
   3)接口中只能定義抽象方法,而且這些方法默認為public的,也只能是public的
   4)接口中可以繼承其他接口,並添加新的屬性和抽象方法
  4>接口(解釋)
   1)多個無關的類可以實現同一個接口。
   2)一個類可以實現多個無關的接口。
   3)與繼承關系類似,接口與實現類之間存在多態性
區別
  1)接口中不能有方法的實現和變量的聲明,抽象類中可以
  2)接口中的方法缺省方法的屬性public abstract,抽象類不能缺省
  3)接口支持多重繼承,抽象類支持單一繼承
二:Java中支持的數據類型有哪些?什麽是自動拆裝箱?
1、Java中有八種基本數據類型以及引用類型
  1字節:byte
  2字節:short,char
  4字節:int,float
  8字節:long,double
  不確定:boolean
  引用數據類型:數組,集合,類,接口等
2、自動裝箱/自動拆箱
  基本數據類型可以和其對應包裝類之間的自動轉換
三:請詳述 ArrayList 和 LinkedList 的區別?
1>容器的概念
  大量的同類引用對象放在統一數據容器中。
2>容器API
  1)jdk所提供的容器API位於java.util包內
  2)JAVA的容器---List,Map,Set?(Array讀快改慢,Linked改快讀慢,Hash兩者之間)
  Collection?代表一個容器collection集合,定義了存儲一組對象的方法,其子接口List和Set分別定義了存儲方式
  ├List?有順序且可以重復(兩個對象之間只要互相equals就算重復)
  │├LinkedList?
  │├ArrayList?
  │└Vector?
  │ └Stack?
  └Set?沒有順序且不可以重復
  Map?成對裝東西,定義存儲鍵值對的方法
  ├Hashtable?
  ├HashMap?
  └WeakHashMap
2>區別
  1)ArrayList是實現了基於動態數組的數據結構,LinkedList基於鏈表的數據結構
  2)讀取數據,ArrayList優於LinkedList,因為LinkedList要移動指針
  3)對於新增和刪除操作,LinedList比較占優勢,因為ArrayList要移動數據。

3. 總結

lz現在大三,意識到了差距,亡羊補牢,為時不晚。接下來就,查漏補缺。下一階段的目標:和同學一起做個項目,補一下基礎,實踐是檢驗真理的唯一標準!

記一次失敗的面試經歷