一封字、java 接口和抽象類的區(qū)別是什么
1、接口中所有方法隱含的都是抽象的耍鬓,而抽象類則可以同時包含抽象和非抽象方法阔籽。
2、類可以實(shí)現(xiàn)多個接口牲蜀,但只能實(shí)現(xiàn)一個抽象類笆制。
3、類如果要實(shí)現(xiàn)接口涣达,它必須要實(shí)現(xiàn)接口聲明中所有方法在辆,但是類可以不實(shí)現(xiàn)抽象類的所有方法,當(dāng)然這種情況下度苔,類也必須聲明為抽象類匆篓。
4、抽象類可以在不提供接口方法實(shí)現(xiàn)的情況下實(shí)現(xiàn)接口林螃。
5奕删、java接口中聲明的變量都是final的,抽象類可以包括非final的變量疗认。
6完残、java接口中成員函數(shù)默認(rèn)是public的,抽象類成員函數(shù)可以private横漏,protected谨设,或者public。
7缎浇、接口是絕對抽象的扎拣,不可以被實(shí)例化,抽象類也不可以被實(shí)例化,但是如果他包含main方法的話可以被調(diào)用二蓝。
二誉券、java接口可以被繼承嗎
可以被接口繼承,但不能被類繼承
三刊愚、java運(yùn)算符中踊跟,那個運(yùn)算符的優(yōu)先級最高
小括號()和下表號[]
四、在Switch語句中能使用的數(shù)據(jù)類型包括那些鸥诽。
byte商玫,short,int牡借,char
五拳昌、StringBuffer和StringBuilder類的區(qū)別
盡可能使用StringBuilder,因為它運(yùn)行比StringBufffer快钠龙,如果強(qiáng)調(diào)線程安全的話使用StringBuilder炬藤。
六、關(guān)于final
1碴里、final方法無法被覆蓋(重寫)刻像。
2、final類無法被繼承并闲。
3细睡、final變量不能被修改,并且final要么在構(gòu)造方法初始化帝火,要么在定義時初始化溜徙。
七、聲明變量和定義變量有什么不同
聲明變量只提供類型和名字犀填,并沒有進(jìn)行初始化蠢壹。定義包括初始話。
八九巡、程序中可以允許多個類同時擁有main方法嗎
可以图贸,當(dāng)程序運(yùn)行時,我們會指定運(yùn)行的類名冕广。JVM只會在你指定的類中查找main方法疏日。
九、一個類可以擁有多個main方法嗎
可以撒汉,但只有一個main方法擁有以下簽名:public static void main(String[] args)沟优。