`
flowercat
  • 浏览: 361767 次
社区版块
存档分类
最新评论

ruby里的require、load与include

阅读更多
require、load类似java中的import,引入别的文件中定义的类
include用于实现mixin,引入module。
# Mixins.rb
module D
	def initialize(name)
    @name =name
	end
  def to_s
		@name
	end
end

module Debug
  include D
	# Methods that act as queries are often
	# named with a trailing ?
	def who_am_i?
		"#{self.class.name} (\##{self.object_id}): #{self.to_s}"
	end
end

class Phonograph
	# the include statement simply makes a reference to a named module
	# If that module is in a separate file, use require to drag the file in
	# before using include
	include Debug
	# ...
end

class EightTrack
	include Debug
	# ...
end

ph = Phonograph.new("West End Blues")
et = EightTrack.new("Real Pillow")
puts ph.who_am_i?
puts et.who_am_i?


require、load 引用的文件需用引号引起来,也可以使用String对象

a='motorcycle'
require a
m = MotorCycle.new('Yamaha', 'red')

A module may contain constants,methods and classes
No instances
分享到:
评论

相关推荐

    Ruby中require、load、include、extend的区别介绍

    include,load则用于包含一个文件中的模块。 require 一般情况下用于加载库文件,而load则用于加载配置文件。 1、require:加载一个库,并且只加载一次,如果多次加载会返回false。只有当要加载的库位于一个分离的...

    08Ruby 模块.docx

    ### Ruby 模块详解 #### 一、Ruby 模块简介 ...通过`require`和`include`语句,可以轻松地在不同文件间共享和重用代码。此外,利用 Mixin 功能,可以实现类似多重继承的效果,使得代码更加灵活和可维护。

    MongoDB and Ruby

    ### MongoDB与Ruby:深入探索文档型数据库及其在Ruby中的应用 #### 一、MongoDB简介 MongoDB是一款基于分布式文件存储的开源文档型数据库系统,它由C++编写而成,适用于处理大规模数据集。MongoDB的设计哲学是为了...

    ruby初学者教程(对初学者很有帮助)

    `require`和`load`用于加载外部文件,`include`用于将模块混合到类中。 ```ruby require 'my_module' ``` #### 九、异常 **9.1 异常处理** Ruby使用`begin...rescue...end`块来捕获和处理异常。 ```ruby begin ...

    Ruby程序设计.doc

    - **require/load:** 用于加载外部的Ruby文件。 - **include:** 用于将一个模块混合到当前类中。 #### 九、异常 **9.1 异常处理** Ruby提供了try/catch风格的异常处理机制。 **9.2 定义异常类** 可以定义...

    ruby语法基础教程

    §8.4 Require, load和include 62 第九章 异常 64 §9.1 异常处理 64 §9.2 定义异常类 68 §9.3 catch和throw 68 第十章 多任务处理 69 §10.1 多线程处理 69 §10.1.1 线程创建 69 §10.1.2 线程操作 70 §10.1.3 ...

    Ruby程序设计(简洁清新的教程)

    `require`和`load`用于加载其他Ruby文件,`include`用于将模块混入到类中。 #### 八、异常 **9.1 异常处理** Ruby使用`begin...rescue...end`结构来捕获和处理异常: ```ruby begin raise "An error occurred....

    ruby 程序设计

    ##### §8.4 Require, load和include - **require**:加载Ruby文件,只有第一次加载时才执行。 - **load**:加载Ruby文件,每次都会执行。 - **include**:将模块中的方法包含到当前类中。 #### 九、异常 ##### §...

    RUBY基础入门指南

    **8.4 Require, load和include** - `require`:加载并执行指定文件。 - `load`:加载文件,不会缓存。 - `include`:将模块混入到类中。 #### 九、异常 **9.1 异常处理** 可以使用`begin...rescue...ensure......

    Ruby程序设计高级教程

    - **Require, load和include**:如何加载其他文件或模块。 #### 九、异常 - **异常处理**:try...rescue...else...ensure结构的使用。 - **定义异常类**:如何自定义异常类。 - **catch和throw**:非本地跳转机制...

    Ruby入门教程

    **8.4 Require, load和include** - `require`:加载Ruby文件。 - `load`:加载Ruby文件,但不会检查是否已经加载过。 - `include`:用于引入模块。 #### 九、异常 **9.1 异常处理** 异常处理机制可以帮助程序在...

    Ruby经典学习教程(口碑不错)

    **8.4 Require, load和include** - `require`用于加载外部的Ruby文件。 - `load`用于动态加载文件,常用于脚本环境。 - `include`用于将模块包含进类中。 #### 九、异常 **9.1 异常处理** - 使用`begin...rescue...

    css_parser:Ruby CSS解析器

    require 'css_parser' include CssParser parser = CssParser :: Parser . new parser . load_uri! ( 'http://example.com/styles/style.css' ) parser = CssParser :: Parser . new parser . load_uri! ( 'file://...

    ruby的程序结构介绍

    - Ruby提供了`require`和`load`两种方式来包含其他文件。 - `require`:当首次加载某个文件时会将其内容执行一次,之后如果再次`require`同样的文件,则不会重复执行。 - `load`:无论何时调用`load`,都会重新...

    Ruby的面向对象方式编程学习杂记

    8. **load vs require**:`load`和`require`都用于导入代码,但`load`每次调用都会重新执行文件,而`require`只会加载一次。`load`通常用于开发环境,`require`用于生产环境。 9. **祖先链**:祖先链描述了类或模块...

    x2ch:2ch 下载器和解析器库

    使用这个库,您可以轻松地使用 Ruby 访问 2ch。 安装 gem install x2ch 例子 获取 2ch 类别和板列表。从服务器下载与 gzip 兼容。 require 'x2ch' include X2CH bbs = Bbs.load bbs.each{|category| puts '- ' +...

    structr:使用正则表达式构建纯文本

    将纯文本绑定到 Ruby 类。 灵感来自 ROXML 用法 require 'structr' Load = Struct . new ( :one , :five , :fifteen ) ProcessItem = Struct . new ( :pid , :user ) class Top include Structr converter :...

Global site tag (gtag.js) - Google Analytics