`
jickcai
  • 浏览: 247524 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

set和get方法动态添加,这些方法在新对象实例化时创建

 
阅读更多

动态生成方法的例子,这些方法在新对象实例化时创建:

//创建一个新的用户对象,接受一个有许多属性的对象作为参数

function User(properties){

//遍历对象的所有属性,并保证其作用域正确
 for(var i in properties){
  (function(which){
   var p=i;

//创建此属性的一个新的读取器(getter)
   which["get"+p]=function(){
    return properties[p];
   };

//创建此属性的一个新的设置器(setter)
   which["set"+p]=function(val){
    properties[p]=val;
   };
  })(this);
 }
}

//创建一个新的用户对象实例,并把具有两个属性的一个对象传入作为种子

var user=new User({name:"Bob",age:44});
alert(user.getname());//输出 Bob
alert(user.getage());//输出 44
user.setage(22);
alert(user.getage()); //输出22

分享到:
评论

相关推荐

    ActionForm里的get和set方法

    Struts框架在调用set方法时,会尝试进行类型转换,将字符串类型的请求参数转换为ActionForm中属性期望的数据类型。如果转换失败,例如用户输入的不是一个有效的数字,Struts会抛出一个TypeMismatchException。...

    C# 利用反射动态创建对象

    利用反射,我们可以动态地创建对象,这意味着在代码执行时,我们能够实例化未知类型的对象,这在处理插件系统、动态加载用户界面组件或根据配置文件创建对象时非常有用。 标题中提到的"利用反射动态创建对象",主要...

    JavaBean getset

    总结,JavaBean中的get和set方法是实现数据封装的关键工具,它们在对象的创建、数据访问、数据绑定和序列化等多个方面都起着重要作用。熟练掌握getter和setter的使用,对于提升Java编程的效率和质量至关重要。在实际...

    python字典setdefault方法和get方法使用实例

    setdefault() 和 get() 方法在编写代码时提供了很大的便利,尤其是在处理不确定字典中是否包含某个键时。这些方法避免了编写额外的条件语句来检查键是否存在于字典中。比如,在构建一个字典的同时初始化键的值,或者...

    PHP程序设计-3期(KC016) 3.8.1创建和使用类常见问题:创建类和实例化对象.docx

    本文将深入探讨创建类和实例化对象时常见的问题,以及如何避免这些问题。 **问题1:类未声明直接使用** 在示例1中,程序员尝试实例化一个名为`Person`的类,但在此之前并未声明这个类。这是个典型错误,因为PHP在...

    SNMP实例大全--snmp4j(get ,trap,set,取mib)

    本文将详细介绍SNMP实例,特别是通过Java库snmp4j实现的GET、GETNEXT、SET操作以及TRAP发送和MIB获取。 1. **SNMP基本概念** SNMP由三个主要组件构成:管理站(Manager)、代理(Agent)和管理信息库(MIB)。管理...

    .net c#动态创建程序集、类、属性、方法等

    在.NET框架中,C#提供了一种强大的能力,即能够在运行时动态地创建程序集、类、属性和方法。这种技术通常被称为元编程或者反射,它允许开发者在代码执行过程中生成和修改代码,大大增强了软件的灵活性和可扩展性。在...

    如何用Map对象创建Set对象Java开发Java经验技巧

    创建Set对象通常有两种方法,一种是直接通过new关键字实例化,另一种是从已有的集合(如List或Map)中转换。在本例中,我们将专注于第二种方法,即从Map对象中获取Set。 1. **获取Map的键集(Key Set):** Map接口...

    vue.js的computed,filter,get,set的用法及区别详解

    实例中还提到了`vm.$set(object, key, value)`方法,这是一个在Vue.js 1.0版本中使用的方法,用于动态添加响应式属性。在Vue.js 2.0中,响应式系统已经改变了,新增的属性不需要特别的设置方法即可具备响应式特性。 ...

    js编写对象方法资料

    我们首先创建了一个构造函数 `TT` 来定义对象的结构和行为,然后通过 `new` 关键字实例化了对象,并使用 `eval` 动态地访问了对象的方法。这种方法虽然能够实现功能,但在实际开发中应考虑更安全、更优雅的方式来...

    关于matlab中get和set的用法

    在MATLAB中,`get` 和 `set` 函数是非常重要的工具,它们被广泛用于获取和设置图形对象(如图窗、坐标轴、线条等)的属性值。理解这些函数如何工作对于进行高级图形处理和可视化至关重要。 #### 一、`get` 函数 `...

    类,对象实例

    要实际使用类,我们需要创建类的实例,这称为对象实例化。在C#中,我们通过`new`关键字来创建对象实例。上述`Person`类的实例创建如下: ```csharp Person person1 = new Person(); person1.Name = "Alice"; person1...

    9 对象的实例化内存布局与访问定位.md,学习代码

    当一个Java类被实例化时,JVM(Java虚拟机)会为这个新对象分配内存空间。这个内存空间主要分为三部分:对象头、实例数据和对齐填充。 1. **对象头**:包含了对象的元数据信息,如对象的类型信息、哈希码、锁状态...

    PHP魔术方法__GET、__SET使用实例

    通过实例化这个类,并尝试访问和设置各个属性,我们可以看到__get()和__set()方法的工作方式。 具体来说,当我们尝试访问对象的公有属性时,可以直接获取其值。然而,当我们访问不存在的属性(如other)或者尝试...

    实例化一个类.rar

    实例化是指在内存中为类创建一个具体的对象,使得我们可以调用该类定义的方法和访问其属性。 标题“实例化一个类.rar”暗示我们将探讨如何在C#中创建类的实例,但值得注意的是,描述提到这个实例化过程不会执行构造...

    net-snmp get set

    开发者可以创建QSnmp类的实例,然后调用其成员函数来进行GET和SET操作。比如,QSnmp::request()方法用于发起GET请求,而QSnmp::setValue()方法用于执行SET操作。 在实际开发过程中,你需要了解以下几点: 1. MIB...

    C#面向对象程序实例

    C#支持属性和方法的访问器(get和set),以及索引器和静态方法。 8. 抽象类与接口的区别:抽象类可以包含实现的成员,可以被继承但不能实例化,而接口只定义签名,不包含实现,可以被一个类实现多个。 9. 集合与...

    JAVAEE中Servlet实例Response与Request对象方法调用范例

    在JAVAEE web开发中,Servlet扮演着核心角色,它提供了服务器端动态处理和响应客户端请求的能力。本实例主要探讨Servlet中的两个关键对象:HttpServletRequest(Request)和HttpServletResponse(Response),它们是...

    实例详解JSP内置对象--request对象

    在JSP中,request对象是默认存在的,可以直接使用不需要创建或实例化。 二、request对象的主要方法 request对象提供了多种方法来访问和处理HTTP请求信息,常用的方法有: * getParameter(String name):获取指定...

Global site tag (gtag.js) - Google Analytics