「java匿名定义对象」java创建匿名对象

博主:adminadmin 2022-12-05 02:03:08 64

今天给各位分享java匿名定义对象的知识,其中也会对java创建匿名对象进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

JAVA匿名类是什么,怎么用??

匿名类是一种特殊的内部类,它是在一个表达式内部包含一个完整的类定义。

内部类是在一个类的内部嵌套定义的类,它可以是其它类的成员,也可以在一个语句块的内部定义,还可以在表达式内部匿名定义。

匿名类与其他类的不同就在于匿名,也就是没有名称。

Java中允许创建子类对象时,除了使用父类的构造方法外,还可以用类体。 匿名类就是一个没有类申明的类体,因为没有名称,所有匿名类不可以申明对象,但却可以创建对象。   例如:

A是一个子类,那么下面的代码就是A的一个子类(匿名类)创建对象。

new A(){  

匿名类的类体

};  

由于匿名类是一个子类,所以和有一般子类的特征。可以继承父类的方法,同样也可以重写父类的方法。值得提醒的是,在使用匿名类时,一定是在某个类中直接用匿名类创建对象,因此匿名类必定是内部类,所以和其他匿名类一样可以访问外嵌类中的成员变量和方法,匿名类的类体中不可以什么。

static成员变量和static方法。

尽管匿名类没有申明的步骤,但可以在创建匿名对象时返回一个引用赋值给匹配参数。   匿名类的常用方式是向方法的参数传值。

具体方法如下:

abstract class Speak{    

public abstract void speakHello();   

}    

class Student{   

void f(Speak sp){   

sp.speakHello();   

}   

}    

public class AnonymousClassDemo {   

public static void main(String[] args) {   

Speak speak = new Speak(){   

public void speakHello(){    

System.out.println("大家好,祝工作愉快!");   

}   

};    

speak.speakHello();    

Student st = new Student();   

st.f(new Speak(){    

public void speakHello(){    

System.out.println("I am a student, how are you");   

}   

});   

}   

}

上面代码的抽象类改成接口同样适用。

java中什么是匿名对象?

普通申明一个对象是这样的\x0d\x0aA a = new A();\x0d\x0a那么这个时候a就是类A的一个对象,这个对象名字就是a\x0d\x0a再来看下面一个例子:\x0d\x0amethod(A a);\x0d\x0a整理method是一个方法,他需要传递一个对象来作为参数,那么这个时候有2种方法:\x0d\x0a方法1:\x0d\x0a A a =new A();\x0d\x0a method (a);\x0d\x0a方法2:\x0d\x0a method (new A());\x0d\x0a\x0d\x0a方法2中new A()就是一个匿名对象,他没有名字。这样可以理解了吧。

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()就是一个匿名对象,他没有名字。这样可以理解了吧。

java中字符串也是个匿名对象?(新手求解释)

1,匿名对象是没有名字的对象,直接new出来的,比如new Demo();

2,字符串比较特殊,java每一个字符都是String类的对象,虽然你没有创建实例,但是确能调用方法,

3,比如,String s = “hello”;s.isEmpty();这里就没有创建对象,却可以调用方法,

Java中匿名对象是什么意思啊?

匿名对象使用方法一:当对对象的方法只调用一次时,可以用匿名对象来完成,这样写比较简化。

如果对一个对象进行多个成员的调用,就必须给这个对象起个名字。

匿名对象使用方法二:可以将匿名对象作为实际参数进行传递。

如下代码所示:

class Person {

    private String name;

    private int age;

    public Person() {

    }

    public Person(String name) {

        this.name = name;

    }

    public Person(String name, int age) {

        this.setName(name);

        this.setAge(age);

    }

    public void setName(String name) {

        this.name = name;

    }

    public String getName() {

        return this.name;

    }

    public void setAge(int age) {

        if (age  0  age  140) {

            this.age = age;

        }

    }

    public int getAge() {

        return this.age;

    }

    public void tell() {

        System.out.println("姓名:" + this.getName() + ",年龄:" + this.getAge());

    }

}

public class Test {

    public static void main(String args[]) {

        new Person("张三", 46).tell();//通过匿名对象调用方法

    }

}

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匿名定义对象和java创建匿名对象的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-05,除非注明,否则均为首码项目网原创文章,转载请注明出处。