java封裝的類
㈠ java中類的封裝是如何實現的
java類中,是分四種級別的:public,private,保護,和默認級別。其中最常用的是public和private級別。java類封裝,就是通過級別來控制的。private級別時,只可以類內部訪問。public級別可讓其他人使用。所以封住java類時,只要把你想封裝的類資源寫成private級別,再在類內部給它提供一個可被他人調用的public方法,這樣,就實現了封裝。大概就是這樣吧
㈡ 什麼是Java的封裝類
封裝類,就是為了方便使用,方便解釋,
方便使用,規定很多方法,記得常用的幾個在以後的編程中大有用處,還可以觸類旁通,不用記太多,也不用覺得太麻煩,以後編程編多了就好了,
另一個就方便解釋,因為是面向對象的。所以方法都可以理解為被動語句,用一個實際的例子,「我打你」這個句子,用java這種面向對象的語言來說就是
你.被打(我);
人這種類就要定義被打這種方法
此外人不僅被打,而且可以被罵,被說,被按排上學、工作等。
所有的方法都會定義在被施加者(也可以說是賓語)所屬類身上。這是java面向對象的特點。
正因為這樣每一個對象都應該有很多可以被施加的動作。
包括具有基本類型這種特徵的對象,舉個例子:1這個整數,但我們可以把它看作任何一種1可以變化的形態(如字元,雙精,浮點),那麼所有針對這種形態的動作都可以實施到它身上,但這些動作要定義在類中(但簡單的數學的加減乘除就算了),通過對象來用。我們用漢語說叫被用,可以叫面向對象。
純屬個人經驗,見笑了
㈢ 什麼是封裝Java語言中的封裝類有哪些
封裝普通來說是為了方便。
技術層面來說。 就是封裝了一個對象。
你封裝的這個對象。使用者不需要去了解你這個對象。
直接使用你的其中一個功能。
比如API 都是封裝好的。 常見的封裝類 比如Integer String之類的。 他們都可以自動轉型
㈣ 什麼是Java的封裝類
封裝類就是人家已經寫好實現,你只要負責調用就可以
比如排序就可以直接調用Collections.sort(Collection
coll)方法,沒必要再自己寫
㈤ java中的封裝類
1.基本類型只能按值傳遞,而每個基本類型對應的封裝類是按引用傳遞的。
2.從性能上說java中的基本類型是在堆棧上創建的,而所有的對象類型都是在堆上創建的,(對象的引用在堆棧上創建)。比如
Integer i=new Integer(10); 其中new Integer()是在堆上創建的,而他的引用Integer i是在堆棧上。 封裝類的出現,是為了更方便的使用一些基本類型不具備的方法,比如valueOf(),toString()等等。還有你如果想傳遞一個int對象的引用,而不是值,那隻能用封裝類。
在堆棧上分配內存的調用效率和在堆上分配內存的效率差太多了。雖然在堆棧上分配內存效率高,不過在堆棧上分配內存有內存泄露的問題。(這是一個平庸程序員基本解決不了的問題...)java用了一種很天才的方法提高了在堆上分配內存的效率,盡管如此,java還是慢。他不太可能達到向c++那麼快,盡管他一直在承諾總有一天虛擬機會和機器碼速度一樣快。
JDK5.0開始可以自動封包了 ,也就是基本數據可以自動封裝成封裝類,基本數據類型的好處就是速度快(不涉及到對象的構造和回收),封裝類的目的主要是更好的處理數據之間的轉換,方法很多,用起來也方便。
當然,封裝類型的傳遞是引用傳遞,比如
Integer a = new Integer(1);
表示一個Integer類型的引用a引用了一塊內存,這塊內存中的數據是1; 而a中所存的則是這塊內存的引用(地址),把a傳給別的方法或對象時,則是把a的引用傳遞過去了。
類型之間的轉換:
String b = "123456";
int c = Integer.parseInt(b);
表示把字元串123456轉成整型數字,其中parseInt是靜態方法,可以直接使用
還有一點,在某些場合,需要用到封裝類,比如一個集合List,它只能往裡面添加對象,也就是Object,那麼直接存數字肯定是不行 的,則需要將數字封裝成封裝類型對象再存到該List中,如
List list = new ArrayList();
list.add(new Integer(1));
list.add(new Integer(2));
list.add(new Integer(3));
list.add(new Integer(4));
JDK5.0以後可以自動封包,所以可以簡寫成
List list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
㈥ JAVA中什麼是封裝類,如何使用
java中的封裝類是基本類型的封裝成對象。
使用方法:
package wrapper;
public class IntegerTest1 {
public static void main(String[] args)
{
Integer i=new Integer(123);
byte b=i.byteValue();
double d=i.doubleValue();
System.out.println("將Integer封裝類轉換為 byte值為:"+b);
System.out.println("將Integer封裝類轉換為 double值為:"+d);
String s1=Integer.toBinaryString(i);
String s2=Integer.toOctalString(i);
String s3=Integer.toHexString(i);
System.out.println("轉換為二進制的值為:"+s1);
System.out.println("轉換為八進制的值為:"+s2);
System.out.println("轉換為十六進制的值為:"+s3);
}
}