`

Ruby class变量 VS class实例变量 VS实例变量

    博客分类:
  • Ruby
阅读更多
#!/usr/bin/ruby

class A
    @@a = "a" # a class variable
    @b = "a" #a class instance variable
    
    attr_accessor :c

    def initialize(c)
        @c = c # an instance variable
    end
    
    class << self
        attr_accessor :b
    end

    def self.greeting
        puts @@a
        puts @b
    end

    
end

class B < A
    @@a = "b"
    @b = "b"
end

A.greeting #=> b a
B.greeting #=> b b
puts A.b
puts A.new('c').c

class变量 当前类及其子类共享
class实例变量 所有实例共享
实例变量 class new出的实例独享
分享到:
评论

相关推荐

    类变量、全局变量、实例变量, 多态、为什么ruby、ruby编码规范

    本文将深入探讨Ruby语言中的类变量、全局变量、实例变量,以及多态的概念,并结合Ruby编码规范来阐述如何有效地编写代码。 一、类变量 类变量在Ruby中以`@@`前缀表示,它们是属于类或模块的共享变量,不会被类的...

    Ruby中类变量和实例变量的比较

    ### Ruby中类变量和实例变量的比较 在Ruby编程语言中,类变量和实例变量都是用来存储数据的重要机制。它们虽然都是变量,但在用途、作用范围、生命周期等方面有着明显的区别。接下来,我们将详细介绍这两者之间的四...

    Ruby语言教程:Ruby 变量示例

    本文将详细介绍 Ruby 中的五种主要变量类型:普通变量、全局变量、实例变量、类变量以及常量,并通过示例代码加深理解。 #### 二、Ruby中的变量类型详解 ##### 1. 普通变量 (Variable) - **定义与使用**: - 普通...

    01Ruby 变量.docx

    ### Ruby 变量详解 #### 一、引言 在深入了解 Ruby 变量之前,我们需要先对 Ruby 这门语言有一个基本的认知。Ruby 是一种高度动态的、面向对象的脚本语言,它由日本人松本行弘(Matsumoto Yukihiro)在 1995 年...

    Ruby类实例变量、类实例方法和类变量、类方法的区别

    在Ruby语言中,类实例变量、类实例方法与类变量和类方法是构成面向对象编程模型的重要组成部分。它们各自有不同的用途和行为特性,下面详细介绍这些概念的区别以及它们的使用场景。 首先,类实例变量和类实例方法都...

    学习 Ruby 的笔记以及 Demo(简介、语言特性、应用场景、Ruby 注释、Ruby 文件的构造与析构语句Ruby 变量等)

    6、Ruby 变量 变量不能使用保留字,命名规则:小写字母 变量名只能由[a-z_0-1]组成,且只能由字母开头 使用 .class 可以获取数据的类型 variable='' # 声明变量 puts variable.class # String【Integer、Float、...

    Ruby入门教程中文PDF 附实例

    本教程针对初学者,旨在帮助读者快速掌握Ruby的基础知识,并通过实例深入理解其用法。 首先,Ruby的基本语法是它的一大亮点。Ruby允许开发者以更自然的方式编写代码,这得益于它的语法接近于英语。例如,变量的声明...

    Ruby 面向对象知识总结

    - **实例变量**:以`@`符号开头的变量称为实例变量。实例变量是在类中定义并在创建对象时初始化的。每个对象都有自己的实例变量副本,这意味着不同对象间的实例变量互不影响。 ```ruby class Box def initialize...

    ruby 局部变量

    ruby&gt; $foo nil ruby&gt; @foo nil ruby&gt; foo ERR: (eval):1: undefined local variable or method `foo’ for main(Object) 对局部变量的第一次赋值做的很像一次声明.如果你指向一个未初始化的局部变量,...

    实例讲解Ruby中的五种变量

    Ruby是一种面向对象的编程语言,它提供了五种不同的变量类型,每种都有其特定的作用域和用法。这里我们将深入探讨这些变量,包括全局变量、实例变量、类变量。 1. **全局变量**:全局变量在Ruby中以 `$` 符号开头。...

    深入分析Ruby 变量

    Ruby是一种动态类型的语言,它提供了丰富的变量类型来存储和操作数据。在Ruby中,有五种主要的变量类型,每种都有其特定的作用域和用途。 1. 变量(Variable):通常以小写字母或下划线开头。它们在局部作用域内...

    ruby 资源(代码范例)

    1. **变量**:Ruby有四种基本类型的变量,分别是局部变量(以小写字母或下划线开头)、实例变量(以`@`开头)、类变量(以`@@`开头)和全局变量(以`$`开头)。 2. **数据类型**:Ruby是动态类型语言,主要的数据...

    Ruby元编程pdf

    5. **元类(Meta-class)**:每个Ruby对象都有一个元类,存储了对象的实例方法。元类的概念使得我们可以在不直接修改类的情况下向对象添加方法,这是Ruby元编程的重要特性。 6. **Proc和Lambda**:这两种都是Ruby中...

    Ruby-Ruby的面向对象的枚举

    Ruby的枚举通常指的是枚举类(Enum Class),这是一种自定义枚举类型的方法,允许我们创建具有特定行为的枚举。在本篇文章中,我们将深入探讨Ruby如何实现面向对象的枚举以及它在实际开发中的应用。 首先,让我们...

    Ruby中文教程,佩戴实例

    变量在Ruby中有四种类型:局部变量、实例变量、类变量和全局变量,它们都有特定的标识符前缀。数据类型包括基本类型和复杂类型,如数组、哈希(字典)、集合等。 函数和方法是Ruby的核心组成部分。你可以定义自己的...

    RUBY 教程.doc

    1. **变量定义:** RUBY中变量分为局部变量(以小写字母开头)、实例变量(以@开头)、类变量(以@@开头)以及全局变量(以$开头)。例如: ```ruby name = "Ruby" # 局部变量 @age = 20 # 实例变量 @@count = 1...

    ruby初级中文教程与实例

    1. 变量:Ruby中的变量分为五种类型:局部变量(以小写字母或下划线开头)、实例变量(以`@`开头)、类变量(以`@@`开头)、全局变量(以`$`开头)和常量(以大写字母开头)。每种变量都有其作用域和使用场景。 2. ...

Global site tag (gtag.js) - Google Analytics