47 匿名对象

什么是匿名对象

  没有名字的对象

匿名对象应用场景

  调用方法  仅仅只调用一次的时候

  那么匿名对象调用有什么好处呢?

   节省代码

  注意:调用多次的时候,不适合,匿名对象调用完毕就是垃圾

 1 class Demo2_Phone{
 2
 3
 4     public static void main(String[] args) {
 5
 6         new Phone().sendMessage();  //匿名对象
 7     }
 8 }
 9
10 class Phone{
11         String brand;
12         int price;
13
14     public void call(){
15         System.out.println("call");
16     }
17
18     public void sendMessage(){
19         System.out.println("sendMessage.....");
20     }
21 }

注意  匿名对象不能给属性赋值,只能读取成员属性

时间: 2024-10-25 07:40:48

47 匿名对象的相关文章

java匿名对象

java学习面向对象之匿名内部类 之前我们提到“匿名”这个字眼的时候,是在学习new对象的时候,创建匿名对象的时候用到的,之所以说是匿名,是因为直接创建对象,而没有把这个对象赋值给某个值,才称之为匿名. 匿名对象回顾: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 class NoObject {     void method()     {         System.out.println("Hello NoNam

this/super/static/final/匿名对象/继承/抽象类/访问权限修饰符

1.this关键字的作用     1)调用本类中的属性;     2)调用本类中的构造方法;且只能放首行,且必须留一个构造方法作为出口,即不能递归调用     3)表示当前对象; 2.匿名对象     直接new出来的对象,不创建变量名,且只能使用一次,通常作为方法的参数及返回值使用 3.继承     继承是面向对象的三大特征之一,通过关键字:extends实现,被继承的类称为父类(也称作基类/超类),实现继承的类称为子类(也称作派生类).     特点:     (1)通过继承,子类可以直接访

匿名对象

(1)匿名对象分析:普通申明一个对象是这样的A a = new A();那么这个时候a就是类A的一个对象,这个对象名字就是a再来看下面一个例子:method(A a);整理method是一个方法,他需要传递一个对象来作为参数,那么这个时候有2种方法:方法1: A a =new A(); method (a);方法2: method (new A());(2)匿名对象详细:1,所谓的匿名对象就是比之前的对象少一个栈内存的引用关系.2,只使用一次的对象,称为匿名对象.3,匿名对象只在堆内存中开辟空间

C# JavascriptSerializer与匿名对象打造Json的完美工具

一:背景 在web项目中经常需要生成json数据,返回给前端ajax. 无论是ashx,还是WebMethod,可以人工的用字符串去拼接,最终得到json数据. 有没有更好的方法呢?我个人推荐使用JavascriptSerializer序列化匿名对象. 二:解决方案 引用 System.Web.Script.Serialization 完整代码 var result = new { UserName = u.Alias, Email = u.Email, Mobile = u.Mobile, O

java匿名对象_面向对象

class Student{ public void tell(){ System.out.println("Hello jikexueyuan"); } public void main{ Student stu=new Student(); stu.tell(); //匿名对象可以直接new 但是只能使用一次 new Student.tell(); } }

黑马程序员 11-OC匿名对象

———Java培训.Android培训.iOS培训..Net培训.期待与您交流! ——— 匿名变量:利用类创建一个对象的时候,没有将对象的地址交给一个指针变量保存,这样的对象称为匿名对象,即没有指针指向的对象. //匿名变量 1 #import <Foundation/Foundation.h> 2 //类的声明 3 @interface Car : NSObject 4 { 5 @public//表示允许外界指针间接访问对象的成员变量 6 int _speed;//速度 7 } 8 //方法

C#匿名对象序列化

//匿名对象序列化 var obj=new { Name = "张三", Age = 15 }; Console.WriteLine(JsonConvert.SerializeObject(obj)); //匿名集合序列化 List<object> list = new List<object>(); list.Add(new { Name = "张三", Age = 15 }); list.Add(new { Name = "张三

C++ 匿名对象的生命周期

//匿名对象的生命周期 #define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std; class Point{ public: Point(){ cout << "自定义的无参构造函数被调用了1" << endl; } ~Point(){ cout << "自定义的析构函数被调用了2" << endl; } }; void P

dynamic结合匿名类型 匿名对象传参

首先说明下,我一般很少用dynamic关键字(类)的,因为毕竟是由反射实现的,所以对于性能方面还是吃亏不少(注:由于心里没底,查了一些资料得知,dynamic实质上好像不是由反射实现的,其性能也比直接反射要高不少,至于为什么,我也不明白,希望你们知道的能留言告诉我一下!谢谢啦 ^_^)我也不知道为什么DLR能够实现与反射一样的实现,但代码,性能要比后者简介,高效!! 我这里就纯粹在这里坐下记录 匿名对象(类型)传参的几种方式 代码如下: class Program { static void M