【rails学习笔记3】ruby基础语法

一 类

class order <ActiveRecord::Base   #类order继承自ActiveRecord::Base
      has_many :line_items             #这个是ActiveRecord中的方法
      attr_accessor  :class             # 等同于同时声明了getter和setter方法
      attr_reader  :time                #声明了getter方法
      attr_writer  :num                 # 声明了setter方法

     def initialize(name)
          #构造方法     
      end

      #name的读方法
     def name
        @name
     end

   # name的写方法
     def name=(newname)
        @name=newname
     end

    def  self.findall
    # 类方法 
    end 

 #默认的方法都是public公开的,
    def  find (a)
      # 成员方法
    end

 # 定义只有自己能使用属性为private的方法
    private
      def privatefind(a)
    end

 #定义自己或者子类能使用的属性为protected的方法
protected
      def protectedfind(a)
          # 方法实现
      end
end

有一个值得注意的地方是,这里的class order并不是和java语言一样是声明一个类,而是调用方法,打开类order(如果没有就创建并打开),然后将后面的声明都赋值给他。

二. 模块

模块和类是相似的,都是由一个个的方法,常量,其他模块和类定义构成的,与类不同的是,模块不能创建基于其本身的对象。

1. 模块的作用

  1. 作为命名空间定义方法,其名称不与其他地方定义的方法有冲突
  2. 允许在不同的类之间共享功能。

2. 模块的声明

 module  MyModule
       def module_method
         # 方法实现
      end
end

 #使用的时候
include modulename

基础语法暂时就上面这些啦,以后碰到继续补充~。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,306评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,896评论 18 399
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 9,396评论 1 10
  • 切切乐? 熟悉的人很熟悉,不熟悉的人一头雾水。 我第一次见这个玩具是在小区的楼下,一个小男孩蹲在地上低着头忙活着,...
    米小圆阅读 7,591评论 0 2
  • 最后的晚班 爱老虎油呢 一天又过去了 宋宋婚礼是早就计划好的 而金柱赫的离去是意外 好好生活 好好爱人
    ninvxv阅读 806评论 0 0