java常用介面
Ⅰ 誰知道java中的介面是指什麼
一、什麼是介面
java介面(Interface),是一系列方法的聲明,是一些方法特徵的集合,一個介面只有方法的特徵沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能)。
二、java中介面定義的一般形式:
[訪問控制符]interface <介面名> {
類型標識符final 符號常量名n = 常數;
返回值類型 方法名([參數列表])
}
下面我們例舉了幾種定義介面的方法:
方法一:
interface B {
//coding here !
}
public interface A extends B{
//coding here !
}
方法二:
abstract class C{
public C(){
}
}
abstract class D extends C{
public D(){
super();
}
}
方法三:
public interface A {
//coding here !
}
abstract class C implements A{
public C(){
}
}
方法四:
interface B {
//coding here !
}
public interface A extends B{
//coding here !
}
abstract class C implements A{
public C(){
}
}
class D extends C{
public D(){
super();
}
}
二、介面的特點
1、Java介面中的成員變數默認都是public,static,final類型的(都可省略),必須被顯示初始化,即介面中的成員變數為常量(大寫,單詞之間用"_"分隔)
2、Java介面中的方法默認都是public,abstract類型的(都可省略),沒有方法體,不能被實例化
3、Java介面中只能包含public,static,final類型的成員變數和public,abstract類型的成員方法
4、介面中沒有構造方法,不能被實例化
5、一個介面不能實現(implements)另一個介面,但它可以繼承多個其它的介面
6、Java介面必須通過類來實現它的抽象方法
7、當類實現了某個Java介面時,它必須實現介面中的所有抽象方法,否則這個類必須聲明為抽象類
8、不允許創建介面的實例(實例化),但允許定義介面類型的引用變數,該引用變數引用實現了這個介面的類的實例
9、一個類只能繼承一個直接的父類,但可以實現多個介面,間接的實現了多繼承.
這些都是Java的基礎知識你可以去一個叫做秒秒學的網站學習相關內容
Ⅱ 請舉出5個常用的類、介面、包
java常用的類:BufferedReader BufferedWriter ,FileReader FileWirter ,String Integer java.util.Date, Class, HashMap
java常用的介面:List ,Map ,Document ,NodeList ,Servlet, HttpServletResponse, Transaction(Hibernate)、 Session(Hibernate), HttpSession
java常用的包:java.lang ,java.io ,java.util ,java.sql ,javax.servlet ,org.apache.strtuts.action ,org.hibernate
拓展資料:
Java(計算機編程語言):Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程 。
Java具有簡單性、面向對象、分布式、健壯性、安全性、平台獨立與可移植性、多線程、動態性等特點。Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等
Ⅲ java中什麼是介面介面的作用是什麼
java介面:
1、Java語言中存在的結構,有特定的語法和結構。
2、Java語言中一個類所具有的方法的特徵集合,是一種邏輯上的抽象。
java介面作用:
1、利於代碼的規范
這樣做的目的一方面是為了給開發人員一個清晰的指示,告訴他們哪些業務需要實現;同時也能防止由於開發人員隨意命名而導致的命名不清晰和代碼混亂,影響開發效率。
2、有利於對代碼進行維護
可以一開始定義一個介面,把功能菜單放在介面里,然後定義類時實現這個介面,以後要換的話只不過是引用另一個類而已,這樣就達到維護、拓展的方便性。
3、保證代碼的安全和嚴密
一個好的程序一定符合高內聚低耦合的特徵,能夠讓系統的功能較好地實現,而不涉及任何具體的實現細節。這樣就比較安全、嚴密一些,這一思想一般在軟體開發中較為常見。
(3)java常用介面擴展閱讀:
關於java介面的使用規范:
1、介面中可以定義常量,不能定義變數,介面中的屬性都是全局靜態常量,介面中的常量必須在定義時指定初始值。
2、 介面中所有的方法都是抽象方法,介面中方法都會自動用public abstract 修飾,即介面中只有全局抽象方法。
3、 介面不能實例化,介面中不能有構造。
4、 介面之間可以通過extends實現繼承關系,一個介面可以繼承多個介面,但介面不能繼承類。
5、 介面的實現類必須實現介面的全部方法,否則必須定義為抽象類。
參考資料來源:網路:java介面
Ⅳ java介面的分類
以下是引用片段:
public interface Actionlistener{
public abstract void actionPerformed(ActionEvent event);
}
僅且只有一個方法,只有實現了這個介面(重寫這個介面中的唯一一個方法),你才有資格去事件監聽器列表裡注冊(參數為Actionlistener類型),當事件源變動時,自動調用這個唯一的actionPerformed方法。 是沒有任何方法和屬性的介面。標識介面不對實現它的類有任何語意上的要求,它僅僅表明了實現它的類屬於一個特定的類型(傳遞)。
不推薦過多的使用標識介面。 用Java介面來聲明一些常量,然後由實現這個介面的類使用這些常量(以前在做畫板的時候這么干過)。建議不要模仿這種常量介面的做法。
【範例】
定義介面格式:
[public]interface 介面名稱 [extends父介面名列表]
{
//靜態常量
[public] [static] [final] 數據類型變數名=常量值;
//抽象方法
[public] [abstract] [native] 返回值類型方法名(參數列表);
}
實現介面格式:
[修飾符] class 類名[extends 父類名] [implements 介面A,介面B,···]
{
類成員變數和成員方法;
為介面A中的所有方法編寫方法體,實現介面A;
為介面B中的所有方法編寫方法體,實現介面B;
}
實例:
本例定義介面AreaInterface,其中有靜態常量pai和求面積的抽象方法area()。類Circle和類Rectangle實現了AreaInterface介面,即為介面中的抽象方法area()編寫了滿足各自要求的方法體,分別求圓形和長方形的面積。
程序:AreaInterface.java 1
2
3
4
5 package jiekou;
public interface AreaInterface{
double pai=Math.PI;
double area();
} 程序:Circle.java 1
2
3
4
5
6
7
8
9
10
11
12
13 package jiekou;
public class Circle implements AreaInterface{
double r;
public Circle(double x){
r=x;
}
//實現介面中的抽象方法,求圓面積
public double area(){
return pai * r * r;
}
public String toString(){
return 圓:r=+r+ area=+area();
}
} 程序:Rectangle.java 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package jiekou;
public class Rectangle implements AreaInterface{
double x,y;
public Rectangle(double a,double b){
x=a;
y=b;
}
public double area()//實現介面中的抽象方法,求長方形面積
{
return x * y;
}
public String toString()
{
return 長方形:x=+x+;y=+y+
area=+area();
}
} 區別Java介面和Java抽象類最大的一個區別,就在於Java抽象類可以提供某些方法的部分實現,而Java介面不可以,這大概就是Java抽象類唯一的優點吧,但這個優點非常有用。如果向一個抽象類里加入一個新的具體方法時,那麼它所有的子類都一下子都得到了這個新方法,而Java介面做不到這一點,如果向一個Java介面里加入一個新方法,所有實現這個介面的類就無法成功通過編譯了,因為你必須讓每一個類都再實現這個方法才行,這顯然是Java介面的缺點。
一個抽象類的實現只能由這個抽象類的子類給出,也就是說,這個實現處在抽象類所定義出的繼承的等級結構中,而由於Java語言的單繼承性,所以抽象類作為類型定義工具的效能大打折扣。在這一點上,Java介面的優勢就出來了,任何一個實現了一個Java介面所規定的方法的類都可以具有這個介面的類型,而一個類可以實現任意多個Java介面,從而這個類就有了多種類型。
不難看出,Java介面是定義混合類型的理想工具,混合類表明一個類不僅僅具有某個主類型的行為,而且具有其他的次要行為。
在語法上,抽象類和介面有著以下不同:
1.abstract class在Java語言中表示的是一種繼承關系,一個類只能使用一次繼承關系。但是,一個類卻可以實現多個interface。 繼承抽象類使用的是extends關鍵字,實現介面使用的是implements關鍵字,繼承寫在前面,實現介面寫在後面。如果實現多個介面,中間用逗號分隔。例:
public class Main extends JApplet
public class Main implements Runnable
public class Main extends JApplet implements ActionListener
public class Main extends JApplet implements ActionListener, Runnable
2.在abstract class中可以有自己的數據成員,也可以有非abstract的成員方法,而在interface中,只能夠有靜態的不能被修改的數據成員(也就是必須是static final的,不過在 interface中一般不定義數據成員),所有的成員方法都是abstract的。
3.abstract class和interface所反映出的設計理念不同。其實abstract class表示的是is-a關系,interface表示的是like-a關系。
4.實現介面的類必須實現其中的所有方法,繼承自抽象類的子類實現所有的抽象方法。抽象類中可以有非抽象方法。介面中則不能有實現方法。
5.介面中定義的變數默認是public static final 型,且必須給其初值,所以實現類中不能重新定義,也不能改變其值。
6.抽象類中的變數默認具有 friendly許可權,其值可以在子類中重新定義,也可以重新賦值。
7.介面中的方法默認都是 public abstract 類型的。
Ⅳ 說出JAVA中一些常用的類,包,介面,請各舉5個~~~
類:1.java.lang.Object
2.java.lang.String
3.java.lang.System
4.java.io.file
5.java.io.FileInputStream
包:1.java.lang包
2.java.io包
3.java.swt包
4.java.util包
5.java.sql包
介面:1.java.util.List<E>
2.java.util.Map<E>
3.java.util.Iterator<E>
4.java.sql.CallableStatement
5.java.lang.Comparable<T>
Ⅵ java中常用的集合介面有哪些
集合主要有Collection和Map介面。
List特點:元素有放入順序,元素可重復
Map特點:元素按鍵值對存儲,無放入順序
Set特點:元素無放入順序,元素不可重復(注意:元素雖然無放入順序,但是元素在set中的位置是有該元素的HashCode決定的,其位置其實是固定的)
List介面有三個實現類:LinkedList,ArrayList,Vector
LinkedList:底層基於鏈表實現,鏈表內存是散亂的,每一個元素存儲本身內存地址的同時還存儲下一個元素的地址。鏈表增刪快,查找慢
ArrayList和Vector的區別:ArrayList是非線程安全的,效率高;Vector是基於線程安全的,效率低
Set介面有兩個實現類:HashSet(底層由HashMap實現),LinkedHashSet
SortedSet介面有一個實現類:TreeSet(底層由平衡二叉樹實現)
Query介面有一個實現類:LinkList
Map介面有三個實現類:HashMap,HashTable,LinkeHashMap
HashMap非線程安全,高效,支持null;HashTable線程安全,低效,不支持null
SortedMap有一個實現類:TreeMap
其實最主要的是,list是用來處理序列的,而set是用來處理集的。Map是知道的,存儲的是鍵值對
set 一般無序不重復.map kv 結構 list 有序 。