`
Anleb
  • 浏览: 31968 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
你有多少种方式创建一个方法?大多数人想到的可能是def 关键字 #普通方法 def tele_you puts "I am Anleb" end #定义单件方法 n="Anleb" def n.tell_you puts "I am #{self}" end n.tell_you #define_method class Project define_method :tell_you do |name| puts name end end a= ...
class Fixnum attr_accessor :value end x=1 p x.object_id x.value="Anleb" p x.value.object_id def change(x) p x.object_id p x.value.object_id #x=2 x.value="Mr.w" p x.object_id p x.value.object_id end change x p x p x.value p x ...
class A @@var=1 @class_var="class var" attr_accessor :object_var,:object_var2 class << self attr_accessor :class_var def a_method1 end end def A.a_method2 end def self.a_method3 end def a ...
1.先看私有方法能否被继承 class A @@name="Anleb" def ask puts @@name end private :ask end a=A.new #a.ask a.send(:ask) class B < A end b=B.new #b.ask b.send(:ask) 结论:对于private方法,是被继承的,类变量(类似于静态变量,属于所有实例),也是可以被继承的。 2.看类的方法能否被继承 题外话:private影响谁? cl ...
主要是交流,水平有限,喜欢研究,多多包涵。 先说一个数组循环问题 arr=[1,2,3] n=arr << arr p n 输出: [1, 2, 3, [...]] 分析: << 传进去的是一个arr指针 # =>[1,2,3,arr] 其实这是一个循环,真实的值是:[1,2,3,[1,2,3,[1,2,3,[1,2,3,........]]] arr[3]=arr arr[3][3]=arr ruby数组比较常用的方法: 1.at方法 arr=[1,2,3] p arr.at(2) p arr[2] 其实:at比[]方法要效率一点,因为它不接 ...
1.先看字符串的object_id str1="Anleb" str2="Anleb" puts str1.object_id puts str2.object_id 输出: 22952500 22952490 id不同说明,虽然对象的值一样,但是他们是不同的东西,什么是不同的东西,也就是指针不同。 str1指针----> 对象 str2指针----> 对象 题外话:不像咱们的c#、java有字符串驻留技术,ruby没有驻留技术的String对象,但是有驻留技术的Fixnum,false,true,不信,我实验给你看: s1=fals ...
class A def self.ask1 puts "the method of class" end def ask2 puts "the method of instance" end end #类的实例对象的方法,方法属于类所生成New出来的实例对象。 p a.methods.length p a.class.instance_methods.length p A.instance_methods.length p a.public_methods.leng ...
Global site tag (gtag.js) - Google Analytics