1.ruby基本格式
1.ruby对于空格是敏感的,很像shell
如:a + b 解释成 a+b(这是两个局部变量)
a +b 解释成 a(+b) (这是一个方法调用)
2.在ruby中一行怎么才算结束?
Ruby解释分号和换行字符作为语句的结束。然而,如果Ruby遇到操作符,
如+,-,或者在一行的末尾将一个反斜杠,他们表示声明的延续。
3.ruby的标识符
变量、常量和方法等名字标识,ruby是对大小写是敏感的,这就意味着
Ram和RAM是在ruby两个不同的标识符。ruby的命名标识一般是由数字
和字母还有下划线(_)组成。
4.ruby保留的关键字
|
BEGIN |
do |
next |
then |
|
END |
else |
nil |
true |
|
alias |
elsif |
not |
undef |
|
and |
end |
or |
unless |
|
begin |
ensure |
redo |
until |
|
break |
false |
rescue |
when |
|
case |
for |
retry |
while |
|
class |
if |
return |
while |
|
def |
in |
self |
__FILE__ |
|
defined? |
module |
super |
__LINE__ |
5.ruby的BEGIN语句
语法:
BEGIN {
code
}
声明的代码在所有语句执行的之前调用。举例:
puts "我是第一行!"
BEGIN {
puts "我是第三行!"
}
执行的结果是:
我是第三行!
我是第一行!
6.ruby的END语句
语法:
END {
code
}
在所有的代码执行之后执行,用法如BEGIN语句
7.ruby中的注解
单行注释:#开头,如:
#I am a comment.just ignore me .
也是可以放在结尾,如:
name = "mars" #This is a comment
也可以注释多行
# This is a comment.
# This is a comment, too
# This is a comment, too
如果嫌这样太麻烦,可以这样写:
以=begin开头,以=end结尾,如:
=begin
This is a comment.
This is a comment, too.
This is a comment, too.
=end
8.Class和Object
ruby是一个纯粹的面向对象的编程语音。也包括面向对象语言的特性:
1>数据的封装
2>数据的抽象
3>抽象
4>继承
一般的面向对象语言,类是如下定义的,在ruby中可以简化类的定义,在之后讲我们讲到
Class Vehicle
{
Number no_of_wheels
Number horspower
Charcters type_of_tank
Fuction speeding
{
}
Fuction driving
{
}
Fuction halting
{
}
}
1.ruby基本格式的更多相关文章
- python和ruby:一些需要注意的小区别。
python和ruby的一些区别 基础区别 运算符号/和// ruby只有/符号.它根据操作的数字类型返回对应的结果.如果数字的类型是int,则返回整除结构,如果是float,则返回float类型的计 ...
- Metasploit Framework(2)Exploit模块、Payload使用
文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 Exploit模块分为主动和被动(Active.Pas ...
- (Gorails) activeStore模块,把一堆属性放在一个hash对象内。gem 'activerecord-typedstore'增强了store模块,更好用了
https://api.rubyonrails.org/classes/ActiveRecord/Store.html https://gorails.com/episodes/preferences ...
- 使用 Ansible 管理 MySQL 复制
Ansible 是一个新兴的 IT 自动化工具.本文将介绍如何通过 Ansible 配置及管理 MySQL 主.从复制环境,实现部署过程自动化,体验 Ansible 简单快速带来的快感. 简介: An ...
- 自动化运维与Saltstack
一.自动化运维介绍 1.自动化运维产生背景 传统的IT运维是将数据中心中的网络设备.服务器.数据库.中间件.存储.虚拟化.硬件等资源进行统一监控,当资源出现告警时,运维人员通过工具或者基于经验进行 ...
- 《Ansible自动化运维:技术与佳实践》第一章读书笔记
Ansible 架构及特点 第一章主要讲的是 Ansible 架构及特点,主要包含以下内容: Ansible 软件 Ansible 架构模式 Ansible 特性 Ansible 软件 Ansible ...
- 第三章·Logstash入门-部署与测试
1.Logstash环境准备与安装 Logstash环境准备 关闭防火墙 #CentOS6 关闭防火墙 [root@elkstack01 ~]# /etc/init.d/iptables stop # ...
- ansible puppet saltstack三款自动化运维工具的对比
一.基础介绍 ansible基础介绍可参考:http://www.linuxidc.com/Linux/2017-12/149671.htm puppet基础介绍可参考:http://www.linu ...
- ELK Stack 介绍 & Logstash 日志收集
ELK Stack 组成 Software Description Function E:Elasticsearch Java 程序 存储,查询日志 L:Logstash Java 程序 收集.过滤日 ...
随机推荐
- 一本通 1434:【例题2】Best Cow Fences
Best Cow Fences 二分答案 + 前缀和 个人认为题意没有表述清楚,本题要求的是满足题意的连续子序列(难度大大降低了有木有). 本题的精度也是非常令人陶醉,请您自行体会吧! #includ ...
- js图片预加载以及延迟加载
当我们需要做图片轮播的时候,如果让图片提前下载到本地,用浏览器缓存起来,我们可以用Image对象: function preLoadImg(){ var img=new Image(); img.sr ...
- 获取显示设备的名称及PNPDeviceID
实现效果: 知识运用: ManagementObjectSearcher类和ManagementObject类 实现代码: private void button1_Click(object send ...
- a标签目标链接问题
1.先确定开始文件和目标文件,例如从css.html开始到body.html 2.确定文件寻找路径,因为css.html的父目录是css,而body.html在body目录下,所以需要先退到上一目录h ...
- BZOJ1009: [HNOI2008]GT考试 (矩阵快速幂 + DP)
题意:求一个长度为n的数字字符串 (n <= 1e9) 不出现子串s的方案数 题解:用f i,j表示长度为i匹配到在子串j的答案 用kmp的失配函数预处理一下 然后这个转移每一个都是一样的 所以 ...
- ubuntu 升级到5.1kernel,打开bbr
apt-get -f install wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.1/linux-headers-5.1.0-0 ...
- thinkphp网站后门-发现后门(Webshell)文件
不知道能不能解决, 1.登录阿里云后台,找到后门文件删除 2.执行 中国镜像 composer config -g repo.packagist composer https://packagist. ...
- iPhone Scrollbars with iScroll
Since we've had web browsers and JavaScript, we've been intent on replacing native browser functiona ...
- noip_最后一遍_3-数据结构
noip基础数据结构太多了又太捞了 所以也就那么几个了 单调队列滑动窗口 #include<bits/stdc++.h> using namespace std; #define maxn ...
- (11)zabbix item types监控类型
1. 什么是item types item types是由zabbix提供的各种类型的检查器(这样翻译很奇怪),大致就是Zabbix agent, Simple checks, SNMP, Zabbi ...