Ruby是单一继承,一个类只能有一个直接的母类
Mix-in 模式来处理复合需求
多重包含: 由下往上回溯,重复的只看最上方的
     换句话说,程序由上往下执行,由具体到抽象,第二次发现同一个模块就无视
 
 
类定义
 class class-name
  ...
 end
注:  实例变量开头@
     
类变量开头@@
      包含模块用
include module-name
     
attr_reader, attr_writer, attr_accessor
查看是否包括模块: class-name.include?(module-name)
直接母类      
     
  class-name.superclass()
所有祖先      
     
  class-name.ancestors()
类方法(静态方法):
      class
<< class-name
     
   def func-name
     
     
 ...
     
   end
     
end
  或者  
  
      def
class-name.func-name
     
    ...
     
end
-----------------------------------------------------------------------------
 
模块定义
 module module-name
  ...
 end
 
注:  不能直接包含数据(外部无法直接获取)
-----------------------------------------------------------------------------
继承关系(inheritance)
如果类包含了模块,则模块作为”母类“,在真实”母类“后面
母类------模块------当前类
class class-name < supclass-name
 
 

最新文章

  1. 转-HttpClient4.3 连接管理
  2. java 将数据写进文件
  3. yum源使用(转)
  4. 存储过程返回布尔值以及C#相关处理
  5. sudo权限添加 和 rpm、deb之名词解释
  6. linux系统下搭建php环境之-Discuz论坛
  7. handler机制和异步更新UI页面
  8. 第6章 适配器模式(Adapter Pattern)
  9. 谷歌安装器扫描时提示“需要root权限”,不用root也可以的!
  10. CSS之 relative 特性
  11. [4.14校内训练赛by hzwer]
  12. Yii2.0源码阅读-PHP如何与redis通信?
  13. Django框架详细介绍---AJAX
  14. c#实现识别图片上的验证码数字
  15. noip宝藏
  16. 用VSCode写Vue要用到的配置
  17. php测试mysql数据库连通性并且在浏览器每一秒输出一次结果
  18. java工程师学习计划
  19. ML(1)——机器学习简述
  20. Android让文本输入框默认不获取焦点

热门文章

  1. msp430项目编程23
  2. Object-C Xcode 编译提示 note: please rebuild precompiled header ZWYLPrefixHeader
  3. [Bzoj3611][Heoi2014]大工程(虚树)
  4. SSH移植
  5. css实现文字渐变
  6. sqlite中常见的问题总结
  7. SqlSugar最容易使用的ORM
  8. Org-mode五分钟教程ZZZ
  9. SharePoint中取得ACL和组中用户数量
  10. Linux 快照