SORU
28 Aralık 2010, Salı


Ruby bir sınıf olup olmadığını Test başka bir sınıfıdır

Bir sınıfın başka bir sınıftan miras olup olmadığını test etmek istiyorum, ama bunun için bir yöntem var gibi görünmüyor.

class A
end

class B < A
end

B.is_a? A 
=> false

B.superclass == A
=> true

Benim ne istediğim önemsiz bir uygulama olacaktır:

class Class
  def is_subclass_of?(clazz)
    return true if superclass == clazz
    return false if self == Object
    superclass.is_subclass_of?(clazz)
  end
end

ama bu zaten beklenir.

CEVAP
28 Aralık 2010, Salı


Sadece < operatörünü kullanın

B < A # => true
A < A # => false

veya <= operatörünü kullanın

B <= A # => true
A <= A # => true

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Blue Lightning TV

    Blue Lightni

    9 EKİM 2011
  • super1988guy

    super1988guy

    9 Aralık 2007
  • Trevor Eckhart

    Trevor Eckha

    19 Aralık 2009