惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
D
Docker
酷 壳 – CoolShell
酷 壳 – CoolShell
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
美团技术团队
量子位
M
MIT News - Artificial intelligence
Apple Machine Learning Research
Apple Machine Learning Research
阮一峰的网络日志
阮一峰的网络日志
博客园 - 叶小钗
博客园 - 三生石上(FineUI控件)
腾讯CDC
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
小众软件
小众软件
博客园 - 司徒正美
罗磊的独立博客
云风的 BLOG
云风的 BLOG
B
Blog RSS Feed
博客园 - 聂微东

博客园 - From Ocean

how to solve error when start Hyper-V quick create app error log4j 2使用properties文件进行配置 (转载)Tips on using log4net RollingFileAppender by Rohit Gupta (Asp.Net)转载-用Powershell 建立IIS web site (DP)降低代码重构的风险(转载) (Life)牛人的学习方法(转译文) (WPF)WPF事件要点-WPF宝典笔记 (WPF)路由事件要点-WPF宝典笔记 (WPF)依赖属性要点-WPF宝典笔记 (Ruby)Ubuntu12.04安装Rails环境 (Ruby)方法的一些有趣的地方--待补充 (Ruby)Ruby中区块用的一些潜藏关键字 (WPF)WPF要点之命令-深入浅出WPF笔记 (WPF)WPF要点之事件-深入浅出WPF笔记 (Algorithm)计算机科学中最重要的32个算法_转载infoq上的文章 (转载)postgresql无法远程登录(设置远程登陆的三点注意事项) (.Net,DevExpress)关于devexpress部分aspx控件需要注意的细节_持续补充ing (.Net,DevExpress)devexpress源码编译需要注意的地方 (Silverlight,WCF,Socket,Cocurrency)一周浏览碰到不错的文章
(Ruby)类变量,实例变量,类常量,如何访问变量
From Ocean · 2012-09-17 · via 博客园 - From Ocean

ruby对于变量的定义、作用域以及访问方法确实和我平常用的C#,javascript,java等复杂了些,而且相对来说有点难以理解。

最常用的是实例变量,定义的时候需要带上@符号,完全可以定义的同时即可使用,外部访问要么自定义方法来进行回馈,或者使用缩写代码块来表达:

attr_accessor: 变量名
:

其中attr_accessor可以更改为attr_reader或者attr_writer,分别代表只读和只写访问

 注意上面是有两个冒号的!!

比较奇特的是,实例变量无法脱离方法进行声明和定义即不能类定义内方法外来进行声明和定义。

接着要说的是类变量。类变量通常可以定义声明在方法体外,但是必须带有@@这个前缀,若是想从外部进行访问,则必须声明相应的方法来访问。

再来谈谈类常量。长时间的c和c#代码阅读中,“常量名大写”一直是作为标准代码来要求的,但是ruby并没有这种要求,访问对于类名首字母有这样的要求。相比较类变量,常量的定义和声明不需要加上@这种前缀,而且也可以在类体里方法定义外,只不过外部访问的时候需要按照如下方式进行访问:

类名::常量名