Java基礎(chǔ)面試題

1.面向?qū)ο蟮奶卣?/b>

(1)封裝 (2)繼承 (3)多態(tài)

2.final finally finalize的區(qū)別

(1)final? :? 被final修飾的類玫镐,就意味著不能再派生出新的子類,不能作為父類而被子類繼承。因此一個(gè)類不能既被abstract聲明加袋,又被final聲明宾袜。將變量或方法聲明為final可岂,可以保證他們?cè)谑褂玫倪^程中不被修改。被聲明為final的變量必須在聲明時(shí)給出變量的初始值痊臭,而在以后的引用中只能讀取。被final聲明的方法也同樣只能使用登夫,不能重載广匙。

(2)finally : 在異常處理時(shí)提供finally塊來執(zhí)行任何清除操作。不管有沒有異常被拋出恼策、捕獲鸦致,finally塊都會(huì)被執(zhí)行。try塊中的內(nèi)容是在無異常時(shí)執(zhí)行到結(jié)束涣楷。catch塊中的內(nèi)容分唾,是在try塊內(nèi)容發(fā)生catch所聲明的異常時(shí),跳轉(zhuǎn)到catch塊中執(zhí)行狮斗。finally塊則是無論異常是否發(fā)生绽乔,都會(huì)執(zhí)行finally塊的內(nèi)容,所以在代碼邏輯中有需要無論發(fā)生什么都必須執(zhí)行的代碼碳褒,就可以放在finally塊中迄汛。

(3)finalize : finalize是方法名。java技術(shù)允許使用finalize()方法在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做必要的清理工作骤视。這個(gè)方法是由垃圾收集器在確定這個(gè)對(duì)象沒有被引用時(shí)對(duì)這個(gè)對(duì)象調(diào)用的鞍爱。它是在object類中定義的,因此所有的類都繼承了它专酗。子類覆蓋finalize()方法以整理系統(tǒng)資源或者被執(zhí)行其他清理工作睹逃。finalize()方法是在垃圾收集器刪除對(duì)象之前對(duì)這個(gè)對(duì)象調(diào)用的。

3.int 和 Integer有什么區(qū)別

(1)int屬于原始基本數(shù)據(jù)類型祷肯,而Integer是對(duì)應(yīng)的包裝類

因?yàn)镴ava為每個(gè)原始類型提供了封裝類:為了能夠?qū)⑦@些基本數(shù)據(jù)類型當(dāng)成對(duì)象操作沉填,Java為每 一個(gè)基本數(shù)據(jù)類型都引入了對(duì)應(yīng)的包裝類型,int的包裝類就是Integer佑笋,從Java 5開始引入了自動(dòng)裝箱/拆箱機(jī)制翼闹,使得二者可以相互轉(zhuǎn)換。

原始類型: boolean蒋纬,char猎荠,byte坚弱,short,int关摇,long荒叶,float,double

封裝類類型:Boolean输虱,Character些楣,Byte,Short宪睹,Integer愁茁,Long,F(xiàn)loat亭病,Double

(2)Integer變量必須實(shí)例化后才能使用

因?yàn)镮nteger是對(duì)象的引用埋市,new Integer(xxx),實(shí)際上是生成一個(gè)指針指向此對(duì)象命贴;而int是直接存儲(chǔ)數(shù)據(jù)值?

(3)Integer是對(duì)象(對(duì)象的引用)道宅,int是基本類型,直接存儲(chǔ)數(shù)值胸蛛。

(4)Integer默認(rèn)值是null污茵,而int默認(rèn)值是0;

4.重載和重寫的區(qū)別

重載:發(fā)生在同一個(gè)類里有兩個(gè)或多個(gè)方法方法名相同但參數(shù)不同的情況

重寫/覆蓋:子類重新定義了父類的方法

5.抽象類和接口有什么區(qū)別

抽象類:

(1)抽象類中可以有構(gòu)造方法葬项,但不能創(chuàng)建抽象類的實(shí)例泞当,只能創(chuàng)建一個(gè)抽象類的變量,讓它指向具體子類的一個(gè)實(shí)例民珍。

(2)抽象類中可以存在普通屬性襟士、方法,靜態(tài)屬性和方法嚷量,但不能有抽象構(gòu)造函數(shù)或者抽象靜態(tài)方法

(3)抽象類中不一定包含抽象方法陋桂,但包含抽象方法的類一定要被聲明為抽象類

(4)抽象類中的抽象方法,需要被子類實(shí)現(xiàn)蝶溶,如果子類不實(shí)現(xiàn)嗜历,則子類也要被定義為抽象類

接口:

(1)接口中沒有構(gòu)造方法,所以也不能實(shí)例化接口的對(duì)象

(2)在接口中只有方法的聲明抖所,沒有方法體

(3)在接口中只有常量梨州,被定義的變量也會(huì)在編譯的時(shí)候默認(rèn)加上public static final

(4)在接口中的方法,都是被public修飾的

(5)接口可以實(shí)現(xiàn)多繼承

(6)接口中定義的方法都需要被實(shí)現(xiàn)咧實(shí)現(xiàn)田轧,如果實(shí)現(xiàn)類不能實(shí)現(xiàn)接口中的所有方法暴匠,則實(shí)現(xiàn)類要被定義為抽象類(abstract)

6.訪問修飾符public private,protected以及不寫(默認(rèn)時(shí)的區(qū)別)

7.是否可以繼承String類

String類是final類傻粘,不可以被繼承

8.HTTP請(qǐng)求的GET 每窖、POST方式的區(qū)別

GET:

a.一般只用于查詢請(qǐng)求

b.可以被收藏帮掉,以及緩存

c.請(qǐng)求參數(shù)放在URL中

d.請(qǐng)求數(shù)據(jù)大小受限于url長(zhǎng)度(1024字節(jié))

e.安全性比較低,不應(yīng)該處理敏感數(shù)據(jù)的請(qǐng)求

POST:

a.不能緩存以及收藏

b.請(qǐng)求數(shù)據(jù)放在body中岛请,長(zhǎng)度不限制

c.安全性比較高

9.session與cookie的區(qū)別

1、cookie數(shù)據(jù)存放在客戶的瀏覽器上警绩,session數(shù)據(jù)放在服務(wù)器上.

2崇败、cookie不是很安全,別人可以分析存放在本地的COOKIE并進(jìn)行COOKIE欺騙肩祥,考慮到安全應(yīng)當(dāng)使用session后室。

3、session會(huì)在一定時(shí)間內(nèi)保存在服務(wù)器上混狠。當(dāng)訪問增多岸霹,會(huì)比較占用你服務(wù)器的性能考慮到減輕服務(wù)器性能方面,應(yīng)當(dāng)使用COOKIE将饺。

4贡避、單個(gè)cookie保存的數(shù)據(jù)不能超過4K,很多瀏覽器都限制一個(gè)站點(diǎn)最多保存20個(gè)cookie予弧。(Session對(duì)象沒有對(duì)存儲(chǔ)的數(shù)據(jù)量的限制刮吧,其中可以保存更為復(fù)雜的數(shù)據(jù)類型)

? 注意:

a.session很容易失效,用戶體驗(yàn)很差;

b.雖然cookie不安全,但是可以加密 ;

c.cookie也分為永久 和暫時(shí) 存在的;

d.瀏覽器 有禁止cookie功能 ,但一般用戶都不會(huì)設(shè)置;

e.一定要設(shè)置失效時(shí)間,要不然瀏覽器關(guān)閉就消失了;

f.兩者最大的區(qū)別在于生存周期,一個(gè)是IE啟動(dòng)到IE關(guān)閉.(瀏覽器頁面一關(guān) ,session就消失了)

一個(gè)是預(yù)先設(shè)置的生存周期掖蛤,或永久的保存于本地的文件杀捻。(cookie)

10.session分布式處理

11.JDBC流程

(1)注冊(cè)驅(qū)動(dòng)

? ? ? ? Class.forName("com.mysql.cj.jdbc.Driver");

(2)連接數(shù)據(jù)庫

Connection? connection =? ? DriverManager.getConnection("jdbc:

mysql://localhost/Contacts?serverTimezone=UTC", "root", "Cc229654512");

(3).創(chuàng)建語句

? ? ? ? Statement state = conn.createStatement();

(4).執(zhí)行SQL語句

ResultSet resultSet=state.executeQuery("select Name, PhoneNumber, Email, QQ, Note from Contacts");

(5).處理結(jié)果集

while(resultSet.next())

{

System.out.println(resultSet.getString(1)+"\t"+resultSet.getString(2)+"\t"+resultSet.getString(3));

}

(6).關(guān)閉連接

? ? rs.close();

? ? state.close();

? ? ? conn.close();

12.MVC設(shè)計(jì)模式

13.equals 與 == 的區(qū)別

(1)基本數(shù)據(jù)類型(也稱原始數(shù)據(jù)類型):byte,short,char,int,long,float,double,boolean,他們之間的比較蚓庭,應(yīng)用雙等號(hào)(==),比較的是他們的值致讥。

(2)復(fù)合數(shù)據(jù)類型(類):當(dāng)他們用(==)進(jìn)行比較的時(shí)候,比較的是他們?cè)趦?nèi)存中的存放地址器赞。所以垢袱,除非是同一個(gè)new出來的對(duì)象,他們的比較后的結(jié)果為true港柜,否則比較后結(jié)果為false惶桐。

JAVA當(dāng)中所有的類都是繼承于Object這個(gè)基類的,在Object中的基類中定義了一個(gè)equals的方法潘懊,這個(gè)方法的初始行為是比較對(duì)象的內(nèi)存地 址姚糊,但在一些類庫當(dāng)中這個(gè)方法被覆蓋掉了,如String,Integer,Date在這些類當(dāng)中equals有其自身的實(shí)現(xiàn)授舟,而不再是比較類在堆內(nèi)存中的存放地址了救恨。【對(duì)于復(fù)合數(shù)據(jù)類型之間進(jìn)行equals比較释树,在沒有覆寫equals方法的情況下肠槽,他們之間的比較還是基于他們?cè)趦?nèi)存中的存放位置的地址值的擎淤,因?yàn)镺bject的equals方法也是用雙等號(hào)(==)進(jìn)行比較的,所以比較后的結(jié)果跟雙等號(hào)(==)的結(jié)果相同秸仙∽炻#】

值類型是存儲(chǔ)在內(nèi)存中的堆棧(簡(jiǎn)稱棧),而引用類型的變量在棧中僅僅是存儲(chǔ)引用類型變量的地址寂纪,而其本身則存儲(chǔ)在堆中席吴。所以,==比較的是棧里的地址捞蛋,而equals比較的是棧里面地址所指向的堆里面的內(nèi)容孝冒。

14.自動(dòng)裝箱與自動(dòng)拆箱


15.設(shè)計(jì)模式的六大原則?

(1)單一職責(zé)原則

(2)開放封閉原則

(3)里氏替換原則

(4)依賴倒置原則

(5)接口隔離原則

(6)迪米特法則

詳解參考此文章設(shè)計(jì)模式之六大原則(轉(zhuǎn)載) - chenxiangxiang - 博客園

16.說說反射的用途及實(shí)現(xiàn)

17.說說自定義注解的場(chǎng)景及實(shí)現(xiàn)

查漏補(bǔ)缺,未完待續(xù)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末拟杉,一起剝皮案震驚了整個(gè)濱河市庄涡,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌搬设,老刑警劉巖穴店,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異拿穴,居然都是意外死亡迹鹅,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門贞言,熙熙樓的掌柜王于貴愁眉苦臉地迎上來斜棚,“玉大人,你說我怎么就攤上這事该窗〉苁矗” “怎么了?”我有些...
    開封第一講書人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵酗失,是天一觀的道長(zhǎng)义钉。 經(jīng)常有香客問我,道長(zhǎng)规肴,這世上最難降的妖魔是什么捶闸? 我笑而不...
    開封第一講書人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮拖刃,結(jié)果婚禮上删壮,老公的妹妹穿的比我還像新娘。我一直安慰自己兑牡,他們只是感情好央碟,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著均函,像睡著了一般亿虽。 火紅的嫁衣襯著肌膚如雪菱涤。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,155評(píng)論 1 299
  • 那天洛勉,我揣著相機(jī)與錄音粘秆,去河邊找鬼。 笑死收毫,一個(gè)胖子當(dāng)著我的面吹牛攻走,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播牛哺,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼陋气,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼劳吠!你這毒婦竟也來了引润?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤痒玩,失蹤者是張志新(化名)和其女友劉穎淳附,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蠢古,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡奴曙,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了草讶。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片洽糟。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖堕战,靈堂內(nèi)的尸體忽然破棺而出坤溃,到底是詐尸還是另有隱情,我是刑警寧澤嘱丢,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布薪介,位于F島的核電站,受9級(jí)特大地震影響越驻,放射性物質(zhì)發(fā)生泄漏汁政。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一缀旁、第九天 我趴在偏房一處隱蔽的房頂上張望记劈。 院中可真熱鬧,春花似錦并巍、人聲如沸抠蚣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽嘶窄。三九已至怀跛,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間柄冲,已是汗流浹背吻谋。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留现横,地道東北人漓拾。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像戒祠,于是被迫代替她去往敵國(guó)和親骇两。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法姜盈,類相關(guān)的語法低千,內(nèi)部類的語法,繼承相關(guān)的語法馏颂,異常的語法示血,線程的語...
    子非魚_t_閱讀 31,623評(píng)論 18 399
  • 1、面向?qū)ο蟮奶卣饔心男┓矫妫?答:面向?qū)ο蟮奶卣髦饕幸韵聨讉€(gè)方面: 抽象:抽象是將一類對(duì)象的共同特征總結(jié)出來構(gòu)...
    runtimeEX閱讀 203評(píng)論 0 0
  • 抽象類## 抽象類是用來描述抽象行為的救拉,比如Animal难审,我們不知道Animal具體有會(huì)有什么樣的行為,只有具體的...
    AlvinL閱讀 8,981評(píng)論 3 74
  • 我的家鄉(xiāng)在平度一個(gè)小山村亿絮,哪里有我的父老鄉(xiāng)親
    孫曉芬閱讀 153評(píng)論 0 0
  • 父母使用“我信息”孩子也不會(huì)改變行為,單純與行為互動(dòng)無效的時(shí)候斗锭,需要我們思考問題的歸屬和雙方利益的訴求地淀。 親子沖突...
    馮媽閱讀 353評(píng)論 0 0