当前所在位置:珠峰网资料 >> 计算机 >> 软件水平 >> 正文
Java核心技术:动态改变对象的能力1
发布时间:2013/2/28 14:29:25 来源:中华考试网 编辑:jack

  

  从Groovy1.1beta-2开始,实现动态改变对象的能力变的十分简单:

  一开始,我们有这样一个类:

  class Person {

  String name

  }

  该类的实例都是哑巴,不能说话,作为造物主的我们该完善它们,使它们能自我介绍(添加实例方法):

  class Person {

  String name

  }

  // 添加自我介绍的行为

  Person.metaClass.introduce << {println "I'm $name"}

  现在让我们看看,它们到底是否真的能够开口自我介绍了呢:

  class Person {

  String name

  }

  // 添加自我介绍的行为

  Person.metaClass.introduce << {println "I'm $name"}

  def person = new Person(name:"山风小子")

  person.introduce()

  运行结果:

  I'm 山风小子

  嗯~人类改造成功~

  但人应该有性别吧,嗯~对的,加个性别属性sex(添加属性):

  class Person {

  String name

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved