首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ruby学习笔记(2)--类的基本使用

ruby语言跟c#的一些重要差别在于: 1.ruby是动态语言,c#是静态语言--即对象在new出来以后,ruby还可以动态给对象实例添加一些属性或方法(javascript也是如此) 2.ruby中刻意弱化了变量类型这个概念...(可以通过 “puts 变量.class“查看) 3.ruby相对c#来讲,可能有些雷的地方在于:父类中的private成员,居然是可以在子类中使用的!......其它地方,等学习深入了再写出来 最后上一段测试代码,展示了ruby中类的基本用法: class People #跟javascript这类动态语言一样,ruby中的类也没有public,private...def call_private_method #子类可以调用父类的私有方法!!!...本身对变量没有类型概念,但是这样却不行,即:在调用父类的受保护方法时,其实是要类型匹配的 puts aMan.class #显示aMan的类名称 运行结果如下: >ruby classDemo.rb

87260
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Ruby Programming | 连载 03 - Ruby 对象基础

    完整的 Ruby 程序是由对象以及发送给对象的消息组成的。类定义了一组行为或者功能,每一个对象都是类实例化而来的,每一个对象都是不同的。...Ruby 中提供了大量的内置类,如 Integer,String,Array 等,当然也可以编写自定义的类或者给内置类修改或者添加新的功能。...Ruby 中类的概念没有对象重要,Ruby 作为一种动态解释型语言,对象在实例化过程中是可以改变的,对象可以在实例化过程中改变类中定义的行为或者增加原类中没有定义的行为,这就是 Ruby 语言的动态特性...Ruby 程序需要通过 Ruby 解释器来执行,该解释器名为 ruby,在代码文件目录下执行命令: ruby exchange.rb 输入兑换的人民币金额 2000,输出可兑换的澳币金额为: 输入要兑换的人民币金额...(元):2000 兑换的澳币金额为(刀):430.4 ruby 解释器可以检查语法错误,通过添加 -c 参数检查语法错误,*-w* 参数激活高级别的警告,如果语法正确输出如下: 如果语法有错误则会输出具体的错误信息和错误行

    2K20

    Ruby Programming | 连载 02 - Ruby 语法基础

    (Output),Ruby 中的 I/O 方法如下: 操作 栗子 说明 打印/输出到控制台 print "Ruby" puts "Hello" p "World" 如果字符串结尾没有换行符 puts...函数会自动添加一个,但是 print 函数不会自动添加,p 函数会输出一个字符串格式数据。...二、Ruby 标识符 Ruby 中的标识符类型不多,主要包含了 变量, 常量, 关键字, 方法名 等,而变量又包含了局部变量, 全局变量, 实例变量 和 类变量。...如 @name、*@age* 类变量是在每一个类层级上存储信息,要区分于实例变量在对象层级上存储信息;对象是由类实例化而来的。类变量以 @@ 开头,使用与局部变量相同的命名规则。...关键字 Ruby 中的关键字大约有 40 个,通常都是一些简单的单一词汇。常用的关键字有 def 方法定义、class 类定义、if 条件判断等。

    5.9K10

    Ruby Programming | 连载 04 - Ruby 扩展基础

    一、Ruby 的安装目录 在 Ruby Programming | 连载 01 - Intro and Setup 中展示了通过 rvm 安装 Ruby 的过程,安装 Ruby 不仅会安装 ruby 解释器...二、Ruby 的扩展库 安装 Ruby 是一同安装的扩展通常成为 Ruby 的标准库,与 Python 的标准库一样,Ruby 的中的大量标准库也提供了非常多的功能或者扩展,包括数据库管理、网络、数据分析等...文件,在同级目录下创建 coffee.rb,代码如下: puts "服务员:对不起先生,这个是大杯" puts "服务员:这个才是中杯" puts "服务员:中杯、大杯、特大杯" 执行 buy.rb,输出结果如下...执行 buy.rb 文件,输出结果如下: 罗老师说要一个中杯的拿铁 服务员:对不起先生,这个是大杯 服务员:这个才是中杯 服务员:中杯、大杯、特大杯 罗老师疯了.......执行 buy.rb 代码,输出结果与之前内容保持一致。

    1.2K50

    Ruby基本语法

    (一)Ruby中一切都是对象      比如可以用.class属性来查看一个对象的类型,看下1.class,会发现常数1的类型是Fixnum,1是Fixnum的一个实例。...(二)Ruby语法      Ruby中的类以class开始 以end结束,类名首字母的约定是大写;      Ruby中的方法以def开始 以end结束,方法名首字母的约定是小写;      Ruby...中的局部变量名首字母的约定是小写;      Ruby中的构造函数(构造方法)名称为initialize;           即类在创建新对象时,调用这一方法      Ruby中的成员变量(实例变量...,对象变量)用@符号,在initialize里进行声明与初始化;      Ruby中的属性用attr,attr_writer,attr_reader和attr_accessor声明; Ruby中的全局变量用...$符号;      Ruby中的常数(常量)用大写字母开头,约定是全部大写;      Ruby中任何的表达式都会返回值。

    1.7K70

    文件类以及IO输入输出

    文件类以及IO输入输出 我们在java使用中必不可少与文件交互,由此IO流显得格外重要 绝对路径和相对路径 绝对路径:完整的路径名,不需要任何其他信息就可以定位它所表示的文件 相对路径:必须使用取自其他路径名的信息进行解释...,如果创建成功为true;但若已有该文件或创造失败输出false } } 注意:window同一页面下不允许出现目录或文件名字一样的情况 File类删除功能 方法如下: 方法名 说明 public...:这个抽象类是表示字节输入流的所有类的超类 OutputStream:这个抽象类是表示字节输出流的所有类的超类 子类名特点:子类都是以其父类名作为子类名结尾 字节流写数据 FileOutputStream...Reader:字符输入流抽象类 Writer:字符输出流抽象类 字符流中的编码解码问题相关类 InputStreamReader OutputStreamWriter 下面给出示例代码: //下面仅对于讲解纯净版...减少代码冗杂 字符缓冲流 字符缓冲流关键类: BufferedWriter:将文本写入字符输出流,缓冲字符,以提供单个字符,数组和字符串的高效写入,可指定缓冲区大小 BufferedReader:从字符输入流读取文本

    65310

    Ruby学习笔记

    Ruby中的类、方法与模块 Ruby中的类      类是对对象行为和属性的描述。...模块可以在类中引入,这样模块的方法就会成为类的方法。可以使用这个小技巧来实现Ruby的多重继承。 Ruby中的方法(函数)      Ruby中的方法区分为实例的方法、类的方法、函数性方法。...这两个方法,在PHP等脚本语言中也非常常见,能够为处理变量和多行的文本输出带来很大的方便。 另外一个需要关心的问题,就是字符串的编码问题。...String类提供了sub、gsub、scan三个方法可以接收正则表达式对象。 IO类 IO是每个程序语言必不可少的部分,通常IO有三个,标准输入、标准输出、错误输出。...File和Dir类 IO类为我们提供了操作输入、输出的标准方法,但是对于我们平时经常遇到的文件系统来说,对于文件和目录的操作是我们经常要进行的,所以Ruby提供了File和Dir类,同时还提供了FileTest

    2K20
    领券