1.面向對象
1.談談你對面向對象的理解
面向對象的三大特點:繼承 封裝 多態
1.繼承:提高代碼的複用性,在一個父類的基礎上拓展子類特有的屬性和行爲
2.封裝:使用一個修飾符private 私有的
(1).把成員變量私有化(使用private修飾)
(2).給私有的成員變量提供getter 和setter方法
3.多態:使用父類類型(或接口) 接收其子類對象(實現類對象)
2.this和super的區別
this是指代當前對象(this所在方法被誰調用,this就是指代哪個對象)
this可以調用本類的構造方法,必須寫在第一行
super:可以看成是父類對象,但不持有父類對象地址
super可以用來調用父類方法字段
super可以在子類的構造方法裏面調用父類的構造方法
3.override和overload的區別
override:方法覆寫(子類與父類 接口與實現類)
但父類的方法不能滿足子類需求需要覆寫父類方法
方法簽名一致
和返回值類型與修飾符有關
(----------------)
overload:方法重載(在同一個類中)
方法名一致當形參列表不同
和返回值類型與修飾符無關
4.final finally finalize
final 是一個修飾符
finally 異常處理裏面代碼塊
finalize Object 垃圾回收的方法
5.== 和 equals 的區別
==是用於基本數據類型的比較(比較地址值)
equals是用於引用數據類型的比較,比較的是對象裏面存儲的數據是否相等,但是,默認Object裏面的 equals本質上還是使用的==在比較
6.String Stringbuffer Stringbuilder的區別
都是表示字符串
在字符串拼接上 Stringbuffer Stringbuilder效率高於String
Stringbuffer 線程安全
Stringbuilder 線程不安全的
7.線程
線程啓動的兩種方式?
一種繼承Thread類
實現Runnable接口
8.請說說啓動線程時 start() 和 run()有什麼區別?
調用run()只是普通點的方法調用.
start()是新開啓一個線程,去執行線程裏面的run()方法
9.請說明 ArrayList和LinkedList的區別
1. 兩個都是不是同步的
2.ArrayList查找效率高,尾部添加效率高,刪除和中間插入數據效率低
3.數據添加刪除效率高,查詢效率低
10.Set和List的區別
1.set --其中的值不允許重複,無序的數據結構
2.list --其中的值允許重複,因爲其爲有序的數據結構
11.HashSet TreeSet的區別(判斷重複的標準)
1.TreeSet 是二差樹實現的,Treeset中的數據是自動排好序的,不允許放入null值。
2.HashSet 是哈希表實現的,HashSet中的數據是無序的,可以放入null,但只能放入一個null
3.兩者中的值都不能重複,就如數據庫中唯一約束。
HashSet不能添加重複的元素,當調用add(Object)方法時候,首先會調用Object的hashCode方法判斷hashCode是否已經存在,如不存在則直接插入元素;如果已存在則調用Object對象的equals方法判斷是否返回true,如果爲true則說明元素已經存在,如爲false則插入元素。
12.Comparable和Comparator 區別
Comparable:自然排序(默認)
Comparator:定製排序
都有一個比較的方法,通過比較方法的返回值,決定添加數據的順序問題(0:相等 1 -1 )
13.map遍歷的方式
1.運用keySet() 遍歷每個key 通過get(String key)
2.EntrySet getKey getValue
2.mysql
1.事務(ACID)
原子性
一致性
隔離性
持久性
2.left join 和 right join 是以那邊的數據表爲準
3.分頁limit
limit (1-1)*10,10;
limit (2-1)*10,10;
limit (3-1)*10,10;
分頁 limit (開始索引,每頁的條數)
有可能手寫sql
select * from 表 where
3.web基礎
1.servlet
1.servlet生命週期
1.第一次訪問的時候初始化
2.以後每一次訪問的時候都執 行service方法
3.當正常的關閉tomcat的時候銷燬
2.四大作用域
1.pageContext
2.Request
3.session
4.application
作用域:用於servlet和servlet之間進行數據共享
3.什麼是jsp ---就是servlet (jsp 頁面會被編譯爲servlet)
4.jsp的內置對象有哪些
request
response
pageContext
session
application
page
out
config
exception
5.el和jstl {在jsp頁面運用一定的規則,取作用域裏面的值}
6.jsp的三大指令
page --導入java jar包
include --引入其他頁面
taglib 引入標籤
7.頁面與頁面跳轉的方式
請求轉發
重定向
請求包含
8.filter過濾器
如何配置過濾器
1.Filter定義的方式
定義一個類實現Filter接口
filter的生命週期
Filter的生命週期---和Servlet的生命週期進行對比
1.Filter在服務器啓動的時候完成對象的創建並執行init方法
2.filter對象只會創建一次,init方法也只會執行一次
3.每次攔截到都會去執行doFilter方法
4.正常關閉會執行destory方法
9.監聽器
如何配置監聽器
<listener>
<listener-class> </listener-class>
</listener>
10.說說cookie和session的區別
session和cookie的作用有點類似,都是爲了存儲用戶相關的信息。不同的是,cookie是存儲在本地瀏覽器,而session存儲在服務器。
cookie存儲的數據量有限,不同的瀏覽器有不同的存儲大小,但一般不超過4KB。
session弊端,就是會佔用服務器的資源,