java平面_java知识点整理
一、http和tcp/ip的區別?
http是應用層協議,主要解決如何封裝數據。
tcp/ip則是傳輸層協議,主要解決數據如何在網絡中傳遞。
web應用使用http協議作為應用層協議來封裝成http文本協議,然后使用tcp/ip做傳輸層協議將信息發布到網絡上。
二、xml的解析方法?
(DOM、SAX)基本的解析方式、DTD、XSLT
SAX是基于事件流的解析,DOM是基于XML文檔樹結構的解析
DOM解析的優缺點?
原理:解析器讀入整個文檔,構建一個駐留內存的樹結構,然后就可以使用了。
優點:整個樹結構存在內存當中方便操作,支持刪除,修改,重新排列等功能;
缺點:整個文檔存入內存,浪費空間和時間。
使用場合:一旦解析了文檔還需多次使用這些數據,硬件資源充足(內存,cpu)。
SAX生成和解析xml的優缺點?
為解決dom的問題而生的。
優點:不用事先調入整個文檔,占用資源少;代碼量少于dom解析器,適用于Applet,下載!
缺點:不是持久的;事件過后,若是沒有保存數據,數據就會丟失,無狀態性;從事件中只能只能得到文本,但不知道來源;
使用場合:Applet;只需知道xml的少量內容,很少回頭訪問,機器內存少。
三、String和StringBuffer和StringBuilder都什么時候用?
String一般多用于定長字符串。
需用經常修改或追加的字符串用Stringbuffer和StringBuilder。(效率高于String)
多線程用StringBuffer,線程安全
單線程StringBuilder,線程非安全。(速度最快)
總結
1.如果要操作少量的數據用 = String
2.單線程操作字符串緩沖區 下操作大量數據 = StringBuilder
3.多線程操作字符串緩沖區 下操作大量數據 = StringBuffer
四、線程和進程的區別?
線程是指進程內的一個執行單元,也是進程內的可調度實體。
與進程區別:
1.地址空間:進程內的一個執行單元;進程至少有一個線程;它們共享進程的地址空間;而進程有自己的內存地址。
2.資源擁有:進程是資源分配和擁有的單位,同一個進程內的線程共享進程的資源。
3.線程是處理器調度的基本單位,但進程不是。
4.二者可以并發執行。
五、 for(foo('A');foo('B')&&(i<2);foo('C'))? for循環的結構?
1.初始化語句
2.循環的終止控制
3.每次循環完畢時執行
六、this和super的區別?
this通常指當前對象,super則指父類的;
this的另一個用途是調用當前對象的另一個構造函數,super引用父類的某種東西。
七、public,private,protected的區別?
public修飾詞,表示成員是公開的,所有其他類都可以訪問;
private修飾詞,表示成員是私有的,只有自身可以訪問;
protected修飾詞,即子類可以訪問父類受保護成員,同時相同包內的其他類也可以訪問protected成員。
八、什么是多態?
多態的定義:指允許不同類的對象對同一消息做出響應。即同一消息可以根據發送對象的不同而采用多種不同的行為方式。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java平面_java知识点整理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第4章 Python 数字图像处理(DI
- 下一篇: 云服务器 性能测试之web压力测试