1.八種基本資料型別是什么?他們的包裝型別是什么?各占多少個位元組?
byte Byte 1個位元組、short Short 2個位元組、int Integer 4個位元組、long Long 8個位元組、float Float 4個位元組、double Double 8個位元組、char Character 2個位元組、boolean Boolean 1位
2.==與equals的區別
==比較的是地址,equals比較的是內容
3.多載和重寫的區別
多載:發生在同一個類中,方法名必須相同,引數型別不同、個數不同、順序不同,方法回傳值和訪問修飾符可以不同,發生在編譯時,
重寫:發生在父子類中,方法名、引數串列必須相同,回傳值范圍小于等于父類,拋出的例外范圍小于等于父類,訪問修飾符范圍大于等于父類;如果父類方法訪問修飾符為private則子類就不能重寫該方法,
4.StringStringBuffer和StringBuilder的區別是什么
StringBuffer和StringBuilder的實作原理一樣,其父類都是AbstractStringBuilder,StringBuffer是執行緒安全的,StringBuilder是JDK 1.5新增的,其功能和StringBuffer類似,性能有一些提升,但是執行緒不安全,
5.String為什么不可變
String類中使用字符陣列保存字串,private?final?char?value[],被final修飾了,
6.&和&&的區別
&運算子:1、按位與;2、邏輯與,
&&運算子是短路運算子,當有一個為false的時候,結果就為false,
7.final的作用
final可以修飾類、變數、方法,修飾類表示該類不能被繼承、修飾方法表示該方法不能被重寫、修飾變數表示該變數是一個常量不能被重新賦值,
8、final finally finalize區別
final可以修飾類、變數、方法,修飾類表示該類不能被繼承、修飾方法表示該方法不能被重寫、修飾變數表示該變數是一個常量不能被重新賦值,
finally一般作用在try-catch代碼塊中,在處理例外的時候,通常我們將一定要執行的代碼方法finally代碼塊中,表示不管是否出現例外,該代碼塊都會執行,一般用來存放一些關閉資源的代碼,
finalize是一個方法,屬于Object類的一個方法,而Object類是所有類的父類,該方法一般由垃圾回收器來呼叫,當我們呼叫System.gc() 方法的時候,由垃圾回收器呼叫finalize(),回收垃圾,一個物件是否可回收的最后判斷,
9、private default protect public的作用范圍
private:Java語言中對訪問權限限制的最窄的修飾符,一般稱之為”私有的”,被其修飾的類、屬性以及方法只能被該類的物件訪問,其子類不能訪問,更不能允許跨包訪問,
default:即不加任何訪問修飾符,通常稱為“默認訪問模式“,該模式下,只允許在同一個包中進行訪問,
protect:一般稱之為“受保護的”,被其修飾的類、屬性以及方法只能被類本身的方法及子類訪問,即使子類在不同的包中也可以訪問,
public:Java語言中訪問限制最寬的修飾符,一般稱之為“公共的”,被其修飾的類、屬性以及方法不僅可以跨類訪問,而且允許跨包(package)訪問,
10、BIO,NIO,AIO的區別
BIO:Block IO 同步阻塞式 IO,就是我們平常使用的傳統 IO,它的特點是模式簡單使用方便,并發處理能力低,
NIO:Non IO 同步非阻塞 IO,是傳統 IO 的升級,客戶端和服務器端通過 Channel(通道)通訊,實作了多路復用,
AIO:Asynchronous IO 是 NIO 的升級,也叫 NIO2,實作了異步非堵塞 IO ,異步 IO 的操作基于事件和回呼機制,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/256781.html
標籤:java
