成员的可见性支持 public
、protected
、private
。
成员的可见性默认为 public
,无需在成员定义上面或下面显式添加。
public
、protected
、private
支持类方法、实例访问器属性、实例方法,不支持类变量、类实例变量、类常量、实例变量、构造方法。
注意:public
、protected
、private
实际上是方法。
成员的可见性 | 类(子类)内调用 | 类(子类)外直接调用 | 继承 | 同一个类(子类)的不同对象 |
public | 可以 | 可以 | 可以 | 可以 |
protected | 可以 | 不可以 | 可以 | 可以 |
private | 可以 | 不可以 | 可以 | 不可以 |
#protected、private方法不带参数,在成员定义上面。
class C
#public成员定义
protected
#protected成员定义
private
#private成员定义
end
#protected、private方法带参数,在成员定义下面。
#后缀方式
class C
#public成员定义
#protected成员定义
protected(:成员名1, :成员名2, :成员名N)
#private成员定义
private(:成员名1, :成员名2, :成员名N)
end
#末尾方式
class C
#public成员定义
#protected成员定义
#private成员定义
protected(:成员名1, :成员名2, :成员名N)
private(:成员名1, :成员名2, :成员名N)
end
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/ruby/rubylang/36166.html