Ruby语言 (三)

来源:互联网 发布:网络流行语2014 编辑:程序博客网 时间:2024/06/06 08:41
#=> class more    #继承怎么实现:    class LittleBird < Bird      def initialize name        super(name)      end    end            #特殊属性访问控制:    attr_reader :name    attr_writer :sex        #=> module    #interface怎么写:    #ruby没有interface,只有比interface更强大的module与mixin机制       #=> module    #"有逻辑实现的interface":    module Eat      def eat        p "i can eat"      end    end    module Sleep      def sleep        p "i can sleep"      end    end    class Pig      include Eat      include Sleep    end    Pig.new.eat    Pig.new.sleep        #=> module constants    # module constants访问:    module Math      PI = 3.14    end    Math::PI        #=> module more    # module namespace:    module Foo      module Bar        def self.say          p "Hi"        end      end    end    Foo::Bar.say            # another module namespace:    module Foo      class Bar        def say          p "Hi"        end      end    end    Foo::Bar.new.say        #=> module singleton   # module的特殊用法singleton:    module Item      extend self            def name        p "i'm item"      end    end    Item.name        #=> ruby more    # monkey patch:    class Fixnum      def plus n        self + n      end    end    1.plus 3        


原创粉丝点击