1.ruby定义函数与执行函数案例

  1. def fact(n) if n == else n * fact(n-) end end
  2.  
  3. print fact()

结果: 24

2.一个小例子

  1. words = ['a','b','c'] secret = words[rand()] print "guess?\n" while guess = STDIN.gets guess.chop! if guess==secret print "You win!\n" break else print "Sorry,you lose.\n" end print "guess?\n" end print "The word was ",secret,"\n"

结果: guess? a Sorry,you lose. guess? b You win! The word was b

3.流程控制 #注释

  1. def checknum(i) case i when .. print "1..5\n" when .. print "6..10\n" end end checknum()

结果: 6..10

4.for循环 #注释

  1. def loopnum(a,z) for num in("#{a}".."#{z}") print num,"\n" end end loopnum(,)

结果: 1 2 3 4 5 6 7 8 9

5.类的演示 #注释

  1. class Dog def speak print "Bow Wow\n" end end
  2.  
  3. dogobj = Dog.new dogobj.speak

结果: Bow Wow

6.继承 #注释

  1. class Dog
  2. def speak
  3. print "Bow Wow\n"
  4. end
  5. end
  6.  
  7. class SpottyDog<Dog
  8. def wash
  9. print "Wash my spotty\n"
  10. end
  11. end
  12.  
  13. spotty = SpottyDog.new
  14. spotty.speak
  15. spotty.wash
  16. 结果:
  17. Bow Wow
  18. Wash my spotty

可以砍掉一些不需要的方法

  1. class Dog
  2. def speak
  3. print "Bow Wow\n"
  4. end
  5. end
  6.  
  7. class RobotDog<Dog
  8. def speak
  9. fail "Sorry.I cant speak"
  10. end
  11. end
  12.  
  13. robot = RobotDog.new
  14. robot.speak

结果: 会报错Sorry.I cant speak

7.重载方法 #注释

  1. class Human def identify print "I'm a person.\n" end def train_toll(age) if age< print "Reduced fare.\n" else print "Normal fare.\n" end end end Human.new.identify
  2.  
  3. class Student1<Human def identify print "I'm a student.\n" end end Student1.new.identify
  4.  
  5. class Student2<Human def identify super print "I'm a student.\n" end end Student2.new.identify
  6.  
  7. class Dishonest<Human def train_toll(age) super()#不诚实的孩子 end end Dishonest.new.train_toll()
  8.  
  9. class Honest<Human def train_toll(age) super(age)#不诚实的孩子 end end Honest.new.train_toll()

结果: I'm a person. I'm a student I'm a person. I'm a student Reduced fare. Normal fare.

Ruby小例子的更多相关文章

  1. Selenium WebDriver + Grid2 + RSpec之旅(三) ----入门小例子

    Selenium WebDriver + Grid2 + RSpec之旅(三) ----入门小例子 第一个例子都是比较简单的博客园登录界面,就像学习编程语言时候都是从Hello,World!开始. 1 ...

  2. springmvc入门的第一个小例子

    今天我们探讨一下springmvc,由于是初学,所以简单的了解一下 springmvc的流程,后续会持续更新... 由一个小例子来简单的了解一下 springmvc springmvc是spring框 ...

  3. java即时通信小例子

    学习java一段时间了,今天写来一个即时通信的小例子练手在其过程中也学到了一些知识拿出来和大家分享,请路过的各位大神多多赐教... 好了下面讲一下基本的思路: 首先,编写服务器端的程序,简单点说吧就是 ...

  4. Runtime的几个小例子(含Demo)

    一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.)           1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数);  [runti ...

  5. bootstrap 模态 modal 小例子

    bootstrap 模态 modal  小例子 <html> <head> <meta charset="utf-8" /> <title ...

  6. INI配置文件分析小例子

    随手写个解析INI配置字符串的小例子 带测试 #include <iostream> #include <map> #include <string> #inclu ...

  7. JavaScript小例子:复选框全选

    JavaScript小例子:复选框全选 这只是一个小例子,很简单,但是这个功能还是很常用的: 实现后效果如图: JavaScript代码: <script type="text/jav ...

  8. 【zTree】 zTree使用的 小例子

    使用zTree树不是第一次了  但是 还是翻阅着之前做的 对照着 使用起来比较方便  这里就把小例子列出来   总结一下使用步骤 这样方便下次使用起来方便一点 使用zTree树的步骤: 1.首先  在 ...

  9. js小例子(标签页)

    运用js写的一个小例子,实现点击不同的标签出现不同的内容: <!DOCTYPE html> <html> <head> <meta chaset=" ...

随机推荐

  1. linux下休眠/待机命令

    http://blog.csdn.net/hshl1214/article/details/6228275

  2. Word Search 解答

    Question Given a 2D board and a word, find if the word exists in the grid. The word can be construct ...

  3. 精讲N皇后问题

             思想:存三个数组记录记录走的过程,运用回溯不符合或row==n+1就跳出当前层,直到找完:递归时的路径都在保存着,当连续跳出到第一次进入的dfs且i=n时就全部跳出dfs函数了: # ...

  4. linux 在批处理中,完整路径有空格的处理方式(加引號)

    cp -f E:/XML_EDITOR/xmleditor25/xmleditor/Editor_UIOuterCtrl/TraceViewDlg.cpp E:/XML_EDITOR/'XMLEdit ...

  5. ArcSDE for Oracle表空间管理——暂时(TEMP)表空间

    Oracle暂时表空间主要用来做查询和存放一些缓冲区数据.暂时表空间消耗的主要原因是须要对查询的中间结果进行排序. 重新启动数据库能够释放暂时表空间,假设不能重新启动实例,而一直保持问题sql语句的运 ...

  6. 安装MySQLdb-python时无法找到-lprobes_mysql处理一则

    安装MySQLdb时,我已经做好了如下两点:1)配置好mysql_config    有两种方式可以做:    ① 做个软连接,把mysql_config链接到/usr/local/bin下    ② ...

  7. LR实战之Discuz开源论坛——登录脚本

    脚本业务流:访问Discuz论坛首页——登录论坛——退出论坛.本次使用LoadRunner11版本. 一.录制脚本注意 1.确保Discuz论坛能在服务器运行正常. 2.录制前先试访问Discuz论坛 ...

  8. 由闭包引起的对javascript代码可维护性的思考

    在最近的编程实践中由闭包的使用引起了我对javascript代码可维护性的思考.面向对象的其中一个特性封装性通过封装可以降低类与类之间或模块与模块之间耦合性从而使我们的设计更加高内聚低耦合,在大规模的 ...

  9. Oracle DBlink的创建-查看与删除

    DBlink常用于在两个Oracle数据库之间相互连接,如手工同步数据时,DBLink是最方便快捷的手段之一. 1.创建DBLink语法:create public database link < ...

  10. What should we do when meet a crash in android?

    制造一个crash   为了演示的目的,我在libsensors的open_sensors_device中故意制造了一个crash:   static int open_sensors_device( ...