자기 자신은 언제입니까?
self
가 정말 그 자체인 때는 언제입니까? 트릭 질문은 항상 그렇습니다. 자신이 누구인지의 문제입니다. 프로그래밍을 처음 접하는 사람으로서 자기 개념을 파악하는 것은 어려운 일이었습니다. 이 단일 변수가 프로그램을 만들거나 중단하는 데 막대한 영향을 미칠 수 있기 때문입니다. 나에게 self는 그것이 가리키는 곳과 사용해야 할 때를 이해하는 수수께끼였습니다. Self는 클래스 또는 인스턴스를 참조할 수 있습니다. self는 어딘가를 가리키는 데 사용할 수 있는 변수이며 가리키는 경우 수신되는 정보를 변경할 수 있습니다.사례
class Dog
def sit
self
end
end
Apollo = Dog.new("Apollo")
Apollo.sit == Apollo
# => true
위의 예에서
sit
는 인스턴스 메서드입니다. Dog.new
를 사용하여 만든 개체에 속합니다. 이 예에서 self가 Dog의 인스턴스를 가리키는 것을 볼 수 있습니다.수업
class Dog
def self.sit
self
end
end
Dog.sit == Dog
# => true
이 예에서 self는 클래스를 가리킵니다. self가 정의된 메서드 앞에 오면 인스턴스 메서드에서 클래스 메서드로 바뀝니다. 클래스 메서드는 클래스 자체가 소유합니다.
자기 자신을 위한 다른 용도
@@all
로 클래스 변수를 호출하는 대신 클래스 변수를 반환하는 클래스 메서드의 도움으로 self.class.all
를 사용하여 메서드 내에서 호출할 수 있습니다. 기능은 동일하지만 시각적으로 더 매력적인 옵션입니다.피해야 하지만 메서드와 지역 변수가 같으면 이렇게 호출할 수 있다.
def cat
"imma cat meow"
end
def method_name
cat = "Munchkin"
puts cat
puts self.cat
end
# => Munchkin
# => imma cat meow
self.cat
를 호출하면 메서드와 이름을 서로 구별할 수 있고 컴퓨터에서 혼동 없이 사용할 수 있습니다(코드를 읽는 사람에게는 혼동을 줄 수 있음).내가 직접 본 더 많은 용도가 있지만, 내가 배우지 않은 것을 가르치고 싶지 않고 앞으로 이 게시물을 업데이트할 것이기 때문에 이 게시물에서는 다루지 않을 것입니다. 여전히 자신을 이해하는 데 어려움을 겪고 있다면 연습 연습을 연습하십시오. 연습과 함께 올 것입니다. 아래는 내가 자신을 더 잘 이해하는 데 도움이 된 기사이며 귀하에게도 도움이 되기를 바랍니다.
Happy Coding!
What Is Self in Ruby & How to Use It (Explained Clearly)
Self in Ruby: A Comprehensive Overview
Understanding
self
in Ruby@/@@ vs. self in Ruby
Reference
이 문제에 관하여(자기 자신은 언제입니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/e0smith/when-is-self-really-itself-45bo텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)