반응형
변수가 클래스의 인스턴스인지 어떻게 확인합니까?
Java에서는 instanceof
. 루비에 상응하는 것이 있습니까?
거의 똑같습니다. Object
의 instance_of?
방법을 사용할 수 있습니다 .
"a".instance_of? String # => true
"a".instance_of? Object # => false
루비에는 또한 메서드 is_a?
와 kind_of?
메서드가 있습니다 (이 2 개는 별칭이고 정확히 동일하게 작동합니다). 반환 true
되는 슈퍼 클래스는 다음과 같은 일치 항목 중 하나입니다.
"a".is_a? String # => true
"a".is_a? Object # => true
kind_of?
및 is_a?
동의어입니다. Ruby는 Java의 instanceof
.
instance_of?
true
객체가 하위 클래스가 아닌 정확한 클래스의 인스턴스 인 경우 에만 반환된다는 점에서 다릅니다 .
instance_of?
및 kind_of?
방법을 살펴보십시오 . 다음은 문서 링크입니다. http://ruby-doc.org/core/classes/Object.html#M000372
나는 klass
클래스 객체를 반환하는으로 성공했습니다 . 이것은 Rails와 관련된 것 같습니다.
샘플 사용법 :
class Foo
end
Foo.new.klass
# => Foo
Foo.new.klass == Foo
# => true
Foo.new.klass == "Foo"
# => false
이 작업을 수행하는 메서드도 있습니다 : Object.is_a?
, 클래스 객체를 인수로 사용하고이 self
클래스의 인스턴스이거나 하위 클래스의 인스턴스 인 경우 true를 반환합니다 .
참고 URL : https://stackoverflow.com/questions/3424782/how-do-i-check-if-a-variable-is-an-instance-of-a-class
반응형
'Programing' 카테고리의 다른 글
Rails 애플리케이션을 초기 데이터로 채우는 방법 (및 여부) (0) | 2020.11.30 |
---|---|
Java를 사용하여 디렉토리의 파일 수 계산 (0) | 2020.11.30 |
UIView animateWithDuration은 cornerRadius 변형을 애니메이션하지 않습니다. (0) | 2020.11.30 |
Visual Studio 2010에서 웹 배포-웹 관리 서비스가 없습니다. (0) | 2020.11.30 |
전체 DIV 주위에 CSS 상자 그림자 추가 (0) | 2020.11.30 |