变量问题:

类变量和方法变量的区别是什么?

类变量:可以直接使用

方法变量:需要实例化后,才能使用该变量

案例一:

  1. class Person
  2. @@name = "Tom"
  3. @@names = "Toms"
  4. @@age = 10
  5. def jek
  6. @jj = "jj"
  7. @@bb="wonter"
  8. end
  9. def Person.getName
  10. return @@name
  11. end
  12. def Person.getNames
  13. return @@names
  14. end
  15. def Person.getage
  16. return @@age
  17. end
  18. end
  19. class Xx < Person
  20. def aa
  21. puts "#{@@age}"
  22. ll = Person.new
  23. ll.jek
  24. @bb = @@bb
  25. puts "#{@bb}"
  26.  
  27. end
  28. end
  29. puts Person.getNames
  30. x = Xx.new
  31. x.aa

父子类继承问题:

重写父类方法,或直接使用父类方法。

案例二:

  1. class Father
  2. def says
  3. puts "I am father."
  4. end
  5. def fatherInfo
  6. puts "father info."
  7. end
  8. end
  9. class Son < Father
  10. def sonInfo
  11. puts "son info."
  12. end
  13. end
  14. class Two < Father
  15. def twoInfo
  16. puts "two info."
  17. end
  18. end
  19. #father = Father.new
  20. son = Son.new
  21. two = Two.new
  22. #father.says
  23. #father.fatherInfo
  24. son.says
  25. son.sonInfo
  26. son.fatherInfo
  27. two.twoInfo
  28. two.says

传参问题:

类之间参数的传递与使用。

案例三:

  1. class Father
  2. def initialize name
  3. @name = name
  4. end
  5. def says
  6. puts "I am father."
  7. end
  8. def fat xx
  9. @xname = xx
  10. puts "I am father. #{@xname}"
  11. end
  12. end
  13. class Son < Father
  14. def sayss
  15. puts "I am son. name: #{@name}"
  16. end
  17. def sonsays
  18. puts "no : #{@name}"
  19. end
  20. end
  21. son = Son.new "Tom"
  22. #son.says
  23. #son.sonsays
  24. son.fat "wonter"

循环和判断问题:

涉及数组

案例四:

  1. list1 = ["192.168.48.202","icare","log"]
  2. list2 = ["192.168.48.101","tomcat","sysif"]
  3. length = list1.length
  4. length.times do |t|
  5. #print "#{list2[t]} \n"
  6.  
  7. if list2[t] = list1[t]
  8. puts "ok list1:#{list1[t]} \n list2:#{list2[t]}"
  9. else
  10. puts "no"
  11. end
  12. end
  13. puts "#################################################################"
  14. for i in list1 do
  15. print "#{i} "
  16. end
  17. puts "\n"

关于引入与通配:

  1. load 'D:\Workspaces\Ruby2\control\CdkPkg.rb'
  2. #load 'D:\Workspaces\Ruby2\control\Cdel_linkP.rb'
  3. class Home
  4. def test_linkpkg
  5. pkg=ClinkPkg.new
  6. pkg.linkPkg
  7. end
  8. # def test_del_linkP
  9. # del=Cdel_linkP.new
  10. # del.del_linkP
  11. # end
  12. end
  13. t = Home.new
  14. test_methods = t.public_methods.grep(/^test_/) # 把所有test_开头的方法找出来。
  15. test_methods.each do |test|
  16. t.send(test) # 执行每个测试用例。
  17. end

其实不管什么语言,什么语法都是大同小异,关键就看怎么用的好,怎么用的顺手。

关于Ruby常用语法案例累积的更多相关文章

  1. iptables常用语法与案例

    常用命令语法: [root@www ~]# iptables [-t tables] [-L] [-nv] 选项与参数: -t :后面接 table ,例如 nat 或 filter ,若省略此项目, ...

  2. Ruby基本语法规则

    1.Ruby常用数据类型 Numbers, Strings, Booleans my_num = 25 my_boollean = true (or false) my_string = " ...

  3. MarkDown常用语法表

    MarkDown常用语法表 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 Title - 标题 2 H ...

  4. MySQL的DML常用语法格式

    MySQL的DML常用语法格式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们知道MySQL的查询大致分为单表查询,多表查询以及联合查询.多表查询,顾名思义,就是查询的结果可能 ...

  5. 黑马eesy_15 Vue:常用语法

    自学Java后端开发,发现14 微服务电商[乐优商城]实战项目,在介绍完SpringCloud后就要肝前端的基础知识ES6语法和Vue.js 所以本篇博客作为入门Vue练习记录的过程,目的是供自学后端 ...

  6. Markdown通用的常用语法说明

    前言 Markdown 是一种轻量级的 标记语言,语法简洁明了.学习容易,还具有其他很多优点,目前被越来越多的人用来写作使用. Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表 ...

  7. Markdown简介以及常用语法

    Markdown简介以及常用语法 最近发现用markdown记录东西很方便,感觉和emacs的org mode很类似,但是windows下使用emacs不是很方便.特此记录一下markdown常用的语 ...

  8. Sql常用语法以及名词解释

    Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...

  9. Markdown常用语法

    什么是Markdown Markdown 是一种方便记忆.书写的纯文本标记语言,用户可以使用这些标记符号以最小的输入代价生成极富表现力的文档. 通过Markdown简单的语法,就可以使普通文本内容具有 ...

随机推荐

  1. Oracle_SQL函数-分组函数

    分组函数 什么是分组函数 分组函数作用于一组数据,并对一组数据返回一个值 组函数类型:主要有6种 AVG - 平均 COUNT - 计数 MAX - 最大 MIN - 最小 SUM - 求和 STDD ...

  2. 关于z-index鲜为人知的事情

    关于z-index很少有人去深入的了解它,因为它看起来一点儿也不复杂,不就是谁的数字大,谁就显示在前面吗?然而今天所摘录的这篇博文,让我震惊了.我承认我从来没有花时间去看具体的z-index相关文档, ...

  3. 关于skip_name_resolve参数的总结

    作为MySQL调优的一部分,很多人都推荐开启skip_name_resolve.这个参数是禁止域名解析的(当然,也包括主机名).很多童鞋会好奇,这背后的原理是什么,什么情况下开启这个参数比较合适. 基 ...

  4. SQL Server 隐式转换引发的躺枪死锁-程序员需知

    在SQL Server的应用开发过程(尤其是二次开发)中可能由于开发人员对表的结构不够了解,造成开发过程中使用了不合理的方式造成数据库引擎未按预定执行,以致影响业务.这是非常值得注意的.这次为大家介绍 ...

  5. 【类库】私房干货.Net数据层方法的封装

    [类库]私房干货.Net数据层方法的封装 作者:白宁超 时间:2016年3月5日22:51:47 摘要:继上篇<Oracle手边常用70则脚本知识汇总>文章的发表,引起很多朋友关注.便促使 ...

  6. 重温Servlet学习笔记--request对象

    request和response是一对搭档,一个负责请求一个负责响应,都是Servlet.service()方法的参数,response的知识点前面梳理过了,这里只说一下request,在客户端发出每 ...

  7. 微信小程序探究

    前段时间比较流行的微信小程序,因为一直没有所谓内测码也没具体关注.拖到现在正好借组内分享的时机来仔细了解一下微信小程序.了解一个新的事物无外乎从是什么(本质),怎么用(具体用法),为什么用(优缺点)来 ...

  8. jQuery-1.9.1源码分析系列(三) Sizzle选择器引擎——总结与性能分析

    Sizzle引擎的主体部分已经分析完毕了,今天为这部分划一个句号. a. Sizzle解析流程总结 是时候该做一个总结了.Sizzle解析的流程已经一目了然了. 1.选择器进入Sizzle( sele ...

  9. angularjs的表单验证

    angularjs内置了常用的表单验证指令,比如min,require等.下面是演示: <!DOCTYPE html> <html> <head> <meta ...

  10. 神奇的CSS3按钮特效

    点击这里查看效果 以下是源代码: <!doctype html> <html> <!-- author: @simurai --> <head> < ...