校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Ruby中類變量和實例變量的比較

Ruby中類變量和實例變量的比較

熱門標簽:電銷機器人廠商代理 常德電銷平臺外呼系統軟件價格 地圖標注賺錢項目注冊 滴滴外呼系統 高德地圖標注客服 徐州網絡外呼系統哪個好 百度地圖標注自定義圖片 湖州u友防封電銷卡 白銀外呼paas系統

1、類變量名以@@開始,一個類變量被這個類所有的實例對象共享;實例變量名以@開始,每個實例對象有各自不同的實例變量;

2、類變量在使用前必須初始化,否則在使用時會報錯;而實例變量如果沒有初始化,則使用時返回nil;

3、類變量是私有的,在類外無法直接訪問,可以通過類方法和實例方法訪問;

復制代碼 代碼如下:

class B
    @@number = 11
    @@num = 22
 
    def my_method      #定義實例方法
        puts @@number
    end
 
    def self.my_method  #定義類方法
        puts @@num
    end
end
 
b = B.new()
puts b.my_method() #通過實例方法訪問類變量  => 11
puts B.my_method() #通過類方法訪問類變量    => 22

4、實例變量也是私有,無法在類外直接引用,可以通過類方法和實例方法訪問;

復制代碼 代碼如下:

class B
      @num  = 11    #實際上這是“類的實例變量”
      @test = 22
      def my_method      #定義實例方法
          puts @num = 33 #跟前面定義的@num不在一個作用域   =>33
          puts @test     #跟前面定義的@test不在一個作用域里,未賦初值,因此返回nil 
          puts @new = 567  #在實例運行my_method時才定義的實例變量 =>567
      end
      def self.my_method      #定義類方法
         puts @num        #這里的@num就是前面定義過的@num  =>11
         puts @test       # =>22
     end
 end
 
 b = B.new()
 
 b.my_method
 puts "--------------------"
 B.my_method

您可能感興趣的文章:
  • Ruby基本的環境變量設置以及常用解釋器命令介紹
  • Ruby中變量引用時的一些注意點
  • 詳細解析Ruby中的變量
  • Ruby 中$開頭的全局變量、內部變量、隱藏變量介紹
  • ruby 局部變量
  • ruby 實變量
  • 深入分析Ruby 變量

標簽:張家界 三沙 梧州 普洱 荊門 公主嶺 永州 遼寧

巨人網絡通訊聲明:本文標題《Ruby中類變量和實例變量的比較》,本文關鍵詞  Ruby,中類,變量,和,實例,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ruby中類變量和實例變量的比較》相關的同類信息!
  • 本頁收集關于Ruby中類變量和實例變量的比較的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 木兰县| 彝良县| 灵宝市| 江都市| 呼玛县| 方正县| 平果县| 黄骅市| 象山县| 曲水县| 彝良县| 贵港市| 南江县| 苍山县| 郸城县| 朝阳县| 遂溪县| 木兰县| 西峡县| 连州市| 永德县| 清原| 温泉县| 营山县| 乌鲁木齐县| 荥经县| 岐山县| 秦安县| 临猗县| 东至县| 城固县| 壤塘县| 吉安市| 和林格尔县| 石阡县| 台北县| 阿鲁科尔沁旗| 鄢陵县| 子长县| 莱州市| 卓资县|