print不自动换行,puts会自动换行第2/2页

 更新时间:2007年10月20日 18:42:59   作者:  

1. 等价语句
单引号里是什么就是什么,会照着输出。
ruby 代码
a=5 b="hhhh" print("a is ",a,"\n") puts("a is #{a}") puts('a is #{a}') 输出结果: a is 5 a is 5 a is #{a}
2. #ruby中如果一个类里有2个同名方法,总是后面的一个被执行

ruby 代码
#ruby支持缺省参数 def sum(a,b=5) a+b end puts sum(3,6) #输出结果为:9 puts sum(3)#输出结果为8 #ruby支持可变参数 def sum(*num) numSum = 0 num.each{|i| numSum += i} return numSum end puts sum() #输出结果为0 puts sum(3,6)#输出结果为9 puts sum(1,2,3,4,5,6,7,8,9)#输出结果为45
3. ruby中的实例变量,类变量,类方法
实例变量:每个实例独享,变量名用@开头
类变量:所有实例共享,变量名用@@开头,类似java里的static变量,但是在使用前必须要初始化。
类方法:不需要通过实例对象来调用。类方法定义方式: 类名.方法名,如:

ruby 代码
def StudentClass.student_count puts "aaa" end

如果在外部调用一个类里的常量,需要用到域作用符号"::"

4.ruby里的单例方法:给具体的某个实例对象添加方法,这个方法只属于这个实例对象的。这样的方法叫单例方法

定义单例方法,首先要生成一个实例对象,其次要在方法名前加上一个对象名和一个点号(.)

如:

ruby 代码
class Person def talk puts "hi!" end end p1 = Person.new p2 = Person.new def p2.talk #定义单例方法p2.talk puts "Here is p2." end def p2.laugh puts "ha,ha,ha..." end p1.talk p2.talk p2.laugh 输出结果为: hi! Here is p2. ha,ha,ha...
5.访问控制

ruby 代码
#访问控制
#public , protected, private
#public 方法,可以被定义它的类和其子类访问,可以被类和其子类的实例对象调用
#protected 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,但是 可以在类和其子类中制定给实例对象
#private 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,私有方法不能指定对象
#访问控制 #public , protected, private #public 方法,可以被定义它的类和其子类访问,可以被类和其子类的实例对象调用 #protected 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,但是 可以在类和其子类中制定给实例对象 #private 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,私有方法不能指定对象 class Person public def talk puts "public:talk" end def speak "protected:speak" end def laugh "private:laugh" end protected :speak private :laugh def useLaughTest(another) puts another.laugh #这里错误,私有方法不能指定对象 end def useSpeakTest(another) puts another.speak #这里可以,,protected方法可以指定对象 end end class Student < Person def useLaugh puts laugh end def useSpeak puts speak end end p1 = Person.new p1.talk #p1.speak 实例对象不能访问protected方法 #p1.laugh 实例对象不能访问private方法 p2 = Student.new p2.useLaugh p2.useSpeak
输出结果为:
public:talk
private:laugh
protected:speak

相关文章

  • 浅谈Ruby on Rails的国际化

    浅谈Ruby on Rails的国际化

    这篇文章主要介绍了Ruby on Rails的国际化,提出了日期货币等格式相关需要注意的地方,需要的朋友可以参考下
    2015-08-08
  • 创建自定义的Ruby gem包的教程

    创建自定义的Ruby gem包的教程

    这篇文章主要介绍了创建自定义的Ruby gem包的教程,包括作者编写的一个简单实例,需要的朋友可以参考下
    2015-04-04
  • Ruby数组(Array)学习笔记

    Ruby数组(Array)学习笔记

    这篇文章主要介绍了Ruby数组(Array)学习笔记,本文讲解了Ruby中数组的定义、数组元素的访问、数组的操作、数组的运算等内容,需要的朋友可以参考下
    2014-11-11
  • Ruby的面向对象编程的基础教程

    Ruby的面向对象编程的基础教程

    这篇文章主要介绍了Ruby的面向对象编程的基础教程,包括Ruby中各种有关类和对象的基础知识,需要的朋友可以参考下
    2015-04-04
  • Rails脚手架使用实例

    Rails脚手架使用实例

    这篇文章主要介绍了Rails脚手架使用实例,通过8个步骤来实现一个完整案例,需要的朋友可以参考下
    2014-06-06
  • Ruby中Hash的11个问题解答

    Ruby中Hash的11个问题解答

    这篇文章主要介绍了Ruby中Hash的11个问题解答,本文讲解了如何创建Hash、Hash的键是哪些类型、 如何给Hash赋默认的值等内容,需要的朋友可以参考下
    2015-01-01
  • Ruby微信开发的几个开源项目介绍

    Ruby微信开发的几个开源项目介绍

    这篇文章主要介绍了Ruby微信开发的几个开源项目介绍,需要的朋友可以参考下
    2014-05-05
  • ruby环境中自动编译sass教程

    ruby环境中自动编译sass教程

    这篇文章主要介绍了ruby环境中自动编译sass教程,本文讲解了ruby环境的安装、sass环境的安装以及sass的常用编译命令使用示例,需要的朋友可以参考下
    2015-02-02
  • 设计模式中的观察者模式在Ruby编程中的运用实例解析

    设计模式中的观察者模式在Ruby编程中的运用实例解析

    这篇文章主要介绍了设计模式中的观察者模式在Ruby编程中的运用实例解析,观察者模式中主张设立观察者对象来降低对象之间的耦合,需要的朋友可以参考下
    2016-04-04
  • 使用Ruby来处理文本的教程

    使用Ruby来处理文本的教程

    这篇文章主要介绍了使用Ruby来处理文本的教程,本文来自于IBM官方网站技术文档,需要的朋友可以参考下
    2015-04-04

最新评论