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

  • DrakeVEVO

    DrakeVEVO

    17 AĞUSTOS 2009
  • EvilControllers

    EvilControll

    20 Ocak 2008
  • Project Mooncircle

    Project Moon

    6 Aralık 2009