A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张盼 中级黑马   /  2014-4-30 10:10  /  691 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张盼 于 2014-5-4 11:06 编辑

匿名对象怎样正确使用?

2 个回复

倒序浏览
//匿名对象的最基本的使用就是如此
public static void main(String[] args) {
                Per p1 = new Per(12);
                p1.idCard="1";
                Per p2 = new Per(33);
                p2.idCard="1";
                Per p3 = new Per(22);
                Per p4 = new Per(15);
                Per p5 = new Per(17);
                //实现 Comparator接口 设置排序方式 这里使用的就是匿名内部类
                TreeSet<Per> ts = new TreeSet<Per>(new Comparator<Per>() {
                        @Override
                        public int compare(Per o1, Per o2) {
                                // TODO Auto-generated method stub
                                return o1.age - o2.age;
                        }
                });
                ts.add(p1);
                ts.add(p2);
                ts.add(p3);
                ts.add(p4);
                ts.add(p5);
                System.out.println(ts.size());
                Iterator<Per> it2 = ts.iterator();
                while(it2.hasNext()){
                        System.out.println(it2.next());
                }
        }
回复 使用道具 举报
    匿名对象就是没有名字的对象 ,也是定义对象的简写格式。

    格式:
    Car c = new Car();

    c.run();  //普通对象调

    new Car().run();  //匿名对象调


    1,当对象对方法仅进行一次调用的时可简化成匿名对象。

    new Car().num = 33;

    new Car().color = "gray";

    new Car().run();


    2,匿名对象可以作为实际参数进行传递。

    Car c1 = new Car();

    show(c1);  //普通对象调

    show(new Car());  //匿名对象作为参数

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马