Swift size miras oluşturabilirsiniz. Eğer B içinde bir fonksiyon yaratıyorsam, A
süper sınıfına referans alabileceğim bir yol var mı? Swift'de bir ebeveyn/süper sınıfa nasıl başvuru yapılır? <code>A</code> Bu örnekte <code>B</code> devralır</p> <pre><code>class A { } class B:A { } </code></pre> <p>:
self.parent
self.super
Ya
self.super()
Ya
Ben tüm bu denenmiş ve hiçbiri benim için çalıştı: Ben bir şey gibi olurdu düşünüyordum. Süper sınıfa nasıl referans alacağını bilen var mı?
"Üst sınıfına referans" ile ne demek istiyorsunuz? Gerçekten yapmaya çalıştığın şey nedir? Bazı yöntemlerin devralınan _implementation_'ına erişebilirsiniz - bu genellikle herkesin isteyebileceği bir şeydir. Pratik gerçek hayatta daha ne istiyorsun? – matt
@matt Temel sınıfın ne olduğunu bulmak için herhangi bir sınıfın süper sınıfına dinamik bir başvuru istiyorum. Oradan başlayabileceğimi ya da üzerinde bir çeşit yansıma yapabildiğimi varsayarım. –
Swift'in iç görüsü yok; Bu kasıtlı. Kakao'ya sizin için göz atmasını isteyebilirsiniz, ancak yine de, ne yapmak istediğinize dair gerçek bir örnek vermediniz. Eğer fikir bir B ve bir diğeri ise bir şey yapman gerektiğinde, polimorfizm bununla ilgilenir. Örneğin, başladığımız şeye bağlı olarak A veya B'yi başlatan bir fabrika işlevini kolayca yazabilirsiniz. Yine, ve son kez, sana ne yapmak istediğini soruyorum. – matt