在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
动态语言之所以“动态”,最明显的特征就是:类实例的行为/属性可以在new出后,动态修改!个人觉得这种处理相对java/c#(静态语言)来说,更符合现实世界。 当然我的意思也并非静态语言不好,只能说各有各的特点,最后来一段代码吧: class Person def cry puts "哇..." end def eat puts "吃奶中,请勿打扰..." end def showbody puts "裸奔一下,展示自己的身体" #这个方法写得比较龌龊 ;) end end aPerson = Person.new #创造了一个新生儿 aPerson.cry #刚出生,当然要哭几下 aPerson.eat #哭累了,就吃 aPerson.showbody #小孩子嘛,随便给看一下小JJ无所谓啦 class Person def read puts "学会了看书" end def walk puts "学会了走路" end end aPerson.walk aPerson.read class Person undef read #后来因为某种原因,突然不会读书了,也许得了什么怪病吧:) end #aPerson.read #这里将报错"undefined method `read' for #<Person:0x39162f0> (NoMethodError)" class Person private:showbody #长大了以后,当然就不能随便给陌生人看自己的身体了 :) end #aPerson.showbody #将报错:private method `showbody' called for #<Person:0x35d5f70> (NoMethodError) |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论