AR삽질러

Ruby メソッドの公開範囲 본문

Ruby/Ruby-日本語

Ruby メソッドの公開範囲

아랑팡팡 2023. 12. 19. 17:00
728x90

 

Ruby メソッドの公開範囲

 

メソッドにアクセスできる条件を指定できるもの。

 

1. public

 - 誰からも見える

 - 公開メソッドは、クラス内でも外部でも呼び出すことができる。
 - Rubyのすべてのメソッドは基本的にpublicです、ただしinitializeメソッドは常にprivate。

2. protected

 - (*あまり使わないので説明省略)

3. private

 - 自分からしか見えない

 - 非公開のメソッドは、そのクラスのインスタンスメソッドでのみアクセスでき、外部から直接呼び出すことはできません。
 - Privateメソッドは、クラス内の詳細な実装を非表示にするために使用され、他のオブジェクトのインスタンスメソッドから呼び出すことはできません。
 - 非公開メソッドは受信者を指定できないため、selfを使用して呼び出すことはできません。 これは、主にオブジェクトの内部データを操作するために使用されます。

 

class User
    def initialize(name)
        @name = name
    end

    def call_hello
        hello
    end
    
    private
        def hello
            puts "Hello! I am #{@name}"
        end
end

user1 = User.new("AR")
# user1.hello
user1.call_hello

 

 

 

 

 

728x90
반응형
LIST