Ruby类使用attr_accessor和initialize方法
努力在
Ruby中制作一个小命令行脚本
用户提供与餐馆相关的一些信息,以及 计算信息返回. 目前我有以下代码: class Restaurant attr_accessor :name :type :avg_price def initialize(name,type,avg_price) @name = name @type = type @avg_price = price end end 问题1 如果我们使用attr_accessors方法来声明类型,价格和名称 问题2 有一个名为RestaurantList的子类,后跟<代码中的数组.这是什么功能? 代码中没有定义Array类?它是一个名为Array的ruby内置类吗?如果是这样,它到底是做什么的? 解决方法
问题1
attr_accessor方法是声明在外部可访问的变量的捷径 ruby中的初始化方法是有人初始化时调用的方法 问题2 Array确实是Ruby内置的一个类(内置类通常称为Ruby标准库,有关Array类的MRI 1.9.3文档,请参阅here.您不需要执行任何类型的特殊继承.但是使用Array类.语言是在一个庄园中定义的,这样就不需要继承诸如字符串,散列,数组和其他常用类之类的东西. 也就是说,这些都可以超载.当你发现看起来像阵列但具有替代功能的那一天时,不要感到惊讶. 其他说明 当你接近Ruby编程时要记住的一件事是一切都是一个对象.您经常会听到这个,但是在您第一次潜水时很难理解但仍然很重要的是要记住所有内容都可以映射回Ruby中的Object类,有关Object类的文档,请参阅here. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- cocos2d-x编译安卓版本时实现“再按一次退出程序”的效果
- 除了动态类型,是什么让Ruby“比Java更灵活”?
- ruby-on-rails – rails 2.3.4使用haml时“模板丢失”
- ReactiveCocoa学习
- rails报错:checking for sqlite3.h... no
- Flash Builder 4 安装报错 Unable to get root from inChil
- iphone – dyld:未加载库:/usr/lib / libc abi.dylib
- swift – 用于Flurry.h的Bridging Header不能使用Pod
- ASP.NET(C#) 读取EXCEL另加解决日期问题的方法分享
- 使用fastjson导致主键自增列错误 Failed to insert row int