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

  • Google Developers

    Google Devel

    23 AĞUSTOS 2007
  • NikkoNantone

    NikkoNantone

    21 Kasım 2011
  • ParryGripp

    ParryGripp

    12 AĞUSTOS 2006