當前位置:首頁 » 編程語言 » 匿名對象java

匿名對象java

發布時間: 2022-05-27 15:41:47

『壹』 java中字元串也是個匿名對象(新手求解釋)

1,匿名對象是沒有名字的對象,直接new出來的,比如new Demo();
2,字元串比較特殊,java每一個字元都是String類的對象,雖然你沒有創建實例,但是確能調用方法,
3,比如,String s = 「hello」;s.isEmpty();這里就沒有創建對象,卻可以調用方法,

『貳』 Java中,匿名對象使用場景:

1:當對方法只進行一次調用的時候,可以使用匿名對象。

2:當對象對成員進行多次調用時,不能使用匿名對象。必須給對象起名字。

『叄』 JAVA里什麼是匿名對象

匿名類?就是沒有指定名稱的類,匿名內部類有利於編寫事件處理程序。

寫了個簡單的小程序,希望對你有所幫助
import java.awt.*;
import java.awt.event.*;

class Test extends Frame
{
public Test()
{
this.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
setSize(300,300);
setVisible(true);
}
public static void main(String args[])
{
new Test();
}
};

點擊右上邊關閉按鈕,會關閉窗體,用內部類實現的

『肆』 java當中如何區分匿名對象和匿名類

下面給你具體介紹一下匿名對象和匿名類:

一、匿名對象

匿名對象是沒有名字的實體,也就是該實體沒有對應的變數名引用

匿名對象的特徵:

  • 創建的匿名類的對象只能夠調用一次

  • 匿名對象只在堆內存中開辟空間,而不存在棧內存的引用

  • 每次創建匿名對象都是不同的對象

二、匿名類

匿名類是不能有名稱的類,所以沒辦法引用它們。必須在創建時,作為new語句的一部分來聲明它們。匿名類相當於在定義類的同時再新建這個類的實例

定義匿名內部類的格式如下:

new 父類構造器(參數列表)|實現介面()
{
//匿名內部類的類體部分
}

匿名類特點:

  • 它必須繼承一個類或者實現一個介面,而不能顯示的使用extends或者implements,沒有父類。

  • 匿名類沒有構造方法。通過new<父類名> 創建對象,匿名類定義與創建對象是同時進行的。

  • 匿名類只能一次性的創建,並有父類句柄持有。

  • 匿名類不需要初始化,只有默認的構造方法

三、匿名對象和匿名類區別

1.匿名對象還是一個對象,它必須有已經寫好的成員變數、屬性、方法

2.匿名類,在聲明它的對象的時候,才對它進行代碼的構造(封裝它的成員變數、屬性、方法等)

3.匿名對象:一個對象只需要使用一次的時候,通常使用匿名對象

4.匿名類:比如我們需要一個監聽類,並且在實例化這個監聽類的時候才需要實現這個監聽類內部的方法,那麼使用匿名類就最方便了

『伍』 java中匿名對象是什麼東西怎樣理解匿名對象什麼時候用

比如我要保存一個用戶對象
User{
public int id;

public String name;

}

save(對象User)

一般情況就是
User user1 = new User();
user1.id = 1;
user1.name="name";
save(user1);

但這個user1隻是在save前使用,之後就沒用了,那麼就可以這樣
save(new User(1,"name");
這樣直接保存,不用創建user1
沒有名字

『陸』 Java中匿名對象是什麼意思啊

匿名對象使用方法一:當對對象的方法只調用一次時,可以用匿名對象來完成,這樣寫比較簡化。

如果對一個對象進行多個成員的調用,就必須給這個對象起個名字。

匿名對象使用方法二:可以將匿名對象作為實際參數進行傳遞。

如下代碼所示:

classPerson{
privateStringname;
privateintage;
publicPerson(){
}
publicPerson(Stringname){
this.name=name;
}
publicPerson(Stringname,intage){
this.setName(name);
this.setAge(age);
}
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetName(){
returnthis.name;
}
publicvoidsetAge(intage){
if(age>0&&age<140){
this.age=age;
}
}
publicintgetAge(){
returnthis.age;
}
publicvoidtell(){
System.out.println("姓名:"+this.getName()+",年齡:"+this.getAge());
}
}
publicclassTest{
publicstaticvoidmain(Stringargs[]){
newPerson("張三",46).tell();//通過匿名對象調用方法
}
}

『柒』 java中匿名對象的好處

先要知道對象可以用來干什麼?起碼可以傳來傳去,用於多個類的交互使用。而匿名對象就不用,這種方式說明只要我用就只能用一次,不能重復使用。可以理解為專屬對象(不知道這種說法是否正確)。

『捌』 java中什麼是匿名對象謝謝!

普通申明一個對象是這樣的
A a = new A();
那麼這個時候a就是類A的一個對象,這個對象名字就是a
再來看下面一個例子:
method(A a);
整理method是一個方法,他需要傳遞一個對象來作為參數,那麼這個時候有2種方法:
方法1:
A a =new A();
method (a);
方法2:
method (new A());

方法2中new A()就是一個匿名對象,他沒有名字。這樣可以理解了吧。

熱點內容
原神文件夾 發布:2025-02-12 14:50:15 瀏覽:800
c語言數字翻譯 發布:2025-02-12 14:45:54 瀏覽:497
暗區突圍為什麼顯示伺服器維修 發布:2025-02-12 14:45:53 瀏覽:247
翻譯分為匯編和編譯 發布:2025-02-12 14:29:12 瀏覽:233
什麼是新聞編譯 發布:2025-02-12 14:23:12 瀏覽:853
如何查看手機存儲 發布:2025-02-12 14:21:15 瀏覽:50
cacti自定義腳本 發布:2025-02-12 14:21:13 瀏覽:313
編譯安卓步驟 發布:2025-02-12 14:19:39 瀏覽:222
php把數組分組 發布:2025-02-12 14:19:37 瀏覽:280
linux部署weblogic 發布:2025-02-12 14:18:58 瀏覽:504