Ruby 教程 之 Ruby 面向对象 5

简介: Ruby 面向对象

Ruby 教程 之 Ruby 面向对象 5

Ruby 面向对象

Ruby 是纯面向对象的语言,Ruby 中的一切都是以对象的形式出现。Ruby 中的每个值都是一个对象,即使是最原始的东西:字符串、数字,甚至连 true 和 false 都是对象。类本身也是一个对象,是 Class 类的一个实例。本章将向您讲解所有与 Ruby 面向对象相关的主要功能。

类用于指定对象的形式,它结合了数据表示法和方法,把数据整理成一个整齐的包。类中的数据和方法被称为类的成员。

类方法 & 类变量
类变量是在类的所有实例中共享的变量。换句话说,类变量的实例可以被所有的对象实例访问。类变量以两个 @ 字符(@@)作为前缀,类变量必须在类定义中被初始化,如下面实例所示。

类方法使用 def self.methodname() 定义,类方法以 end 分隔符结尾。类方法可使用带有类名称的 classname.methodname 形式调用,如下面实例所示:

实例

!/usr/bin/ruby -w

class Box

初始化类变量

@@count = 0
def initialize(w,h)

  # 给实例变量赋值
  @width, @height = w, h

  @@count += 1

end

def self.printCount()
puts "Box count is : #@@count"
end
end

创建两个对象

box1 = Box.new(10, 20)
box2 = Box.new(30, 100)

调用类方法来输出盒子计数

Box.printCount()

尝试一下 »
当上面的代码执行时,它会产生以下结果:

Box count is : 2

目录
相关文章
|
缓存 JavaScript
Vue computed详解
computed是Vue中一个计算属性,它可以根据依赖的数据动态计算出一个新的值,并将其缓存起来。computed属性是基于它们的依赖进行缓存的,只有当依赖发生变化时,才会重新计算。 computed属性具有以下特性: • 缓存:computed属性会缓存计算结果,在依赖不变时直接返回缓存值,提高性能。 • 响应式:当依赖发生变化时,computed属性会自动重新计算并更新。 • 依赖追踪:Vue会自动追踪computed属性所依赖的数据,并在其发生变化时触发重新计算。
441 0
|
编解码 人工智能 自然语言处理
魔搭社区每周速递(8.25-8.31)
326个模型、82个数据集、71个创新应用、5篇应用文章
魔搭社区每周速递(8.25-8.31)
【Azure Function】Azure Function中的Timer Trigger无法自动触发问题
【Azure Function】Azure Function中的Timer Trigger无法自动触发问题
|
网络协议 Ubuntu Linux
本地Linux搭建web服务并发布公网访问 - 无需公网IP(二)
本地Linux搭建web服务并发布公网访问 - 无需公网IP(二)
|
前端开发
React 购物车小球动画
React 购物车小球动画
153 0
|
存储 人工智能 大数据
Hbase中表结构的设计
Hbase中表结构的设计
|
设计模式 存储 缓存
设计模式~享元模式(flyweight)-09
目录 (1)优点: (2)缺点: (3)使用场景: (4)注意事项: (5)应用实例:
107 0
|
JavaScript 前端开发
学习JavaScript笔记
学习JavaScript笔记
171 0
|
消息中间件 Cloud Native 安全
.NET 云原生架构师训练营(模块二 基础巩固 RabbitMQ Masstransit 详解)--学习笔记
Consumer 消费者 Producer 生产者 Request-Response 请求-响应
539 1
.NET 云原生架构师训练营(模块二 基础巩固 RabbitMQ Masstransit 详解)--学习笔记