«encapsulation» etiketlenmiş sorular

OOP'de, nesnenin bazı bileşenlerine erişimi kısıtlayan mekanizma veya uygulama ayrıntılarından ayrılmayı teşvik eden bir tasarım ilkesi.


12
Python'un 'özel' yöntemleri neden özel değil?
Python bize bu gibi isme çift çizgi ekleyerek bu bir sınıf içinde 'özel' yöntem ve değişkenleri oluşturma olanağı verir: __myPrivateMethod(). Öyleyse, kişi bunu nasıl açıklayabilir? >>> class MyClass: ... def myPublicMethod(self): ... print 'public method' ... def __myPrivateMethod(self): ... print 'this is private!!' ... >>> obj = MyClass() >>> obj.myPublicMethod() …

30
C ++ 'da ne zaman' arkadaş 'kullanmalısınız?
C ++ SSS ile okuyordum ve friendbeyanı merak ettim . Şahsen hiç kullanmadım, ancak dili keşfetmekle ilgileniyorum. Kullanmaya iyi bir örnek nedir friend? SSS'yi biraz daha uzun okumak, << >>bu sınıfların arkadaşı olarak aşırı yükleme ve ekleme fikrini seviyorum . Ancak bunun nasıl kapsüllenmeyi bozmadığından emin değilim. Bu istisnalar ne …
354 c++  oop  encapsulation  friend 


4
__Getattr__ ve __getattribute__ arasındaki farkı anlama
Arasındaki farkı anlamaya çalışıyorum __getattr__ve __getattribute__bununla birlikte başarısız oluyorum. Cevap yığın taşması soru için aralarında Fark __getattr__VS__getattribute__ diyor: __getattribute__nesnenin gerçek özelliklerine bakmadan önce çağrılır ve bu nedenle doğru bir şekilde uygulanması zor olabilir. Sonsuz özyinelemelere çok kolayca son verebilirsiniz. Bunun ne anlama geldiğine dair hiçbir fikrim yok. Sonra şöyle der: …

22
Soyutlama VS Bilgi Gizleme VS Kapsülleme
Yazılım geliştirmede soyutlama ile bilgi gizleme arasındaki farkın ne olduğunu söyleyebilir misiniz ? Kafam karıştı. Soyutlama, ayrıntı uygulamasını ve bilgileri gizleyerek bir şeyin tüm ayrıntılarını gizler. Güncelleme: Bu üç kavram için iyi bir cevap buldum. Oradan alınan birkaç alıntı için aşağıdaki ayrı cevaba bakınız .

9
Bir Koleksiyonu veya Akışı iade etmeli miyim?
Üye listesine salt okunur bir görünüm döndüren bir yöntemim olduğunu varsayalım: class Team { private List < Player > players = new ArrayList < > (); // ... public List < Player > getPlayers() { return Collections.unmodifiableList(players); } } Ayrıca, tüm müşterinin yaptığı listenin hemen üzerinde bir kez yinelendiğini varsayalım. …

9
Java: Alt paket görünürlüğü mü?
Projemde iki paket var: odp.projve odp.proj.test. Sadece bu iki paketteki sınıflar tarafından görülmesini istediğim belirli yöntemler var. Bunu nasıl yapabilirim? EDIT: Java bir alt paket kavramı yoksa, bunun herhangi bir yolu var mı? Yalnızca test kullanıcıları ve bu paketin diğer üyeleri tarafından kullanılabilir olmasını istediğim belirli yöntemler var. Her şeyi …

21
Bağımlılık Enjeksiyonu Kapsülleme pahasına mı gelmelidir?
Doğru anlarsam, Bağımlılık Enjeksiyonu için tipik mekanizma, ya bir sınıf yapıcısı ya da sınıfın bir genel özelliği (üyesi) aracılığıyla enjekte etmektir. Bu, enjekte edilen bağımlılığı ortaya çıkarır ve OOP kapsülleme ilkesini ihlal eder. Bu değiş tokuşu belirlemekte haklı mıyım? Bu konuyla nasıl başa çıkıyorsunuz? Lütfen aşağıdaki kendi soruma verdiğim cevaba …

7
Bir strateji kalıbı ve bir komut kalıbı kullanmak
Her iki tasarım deseni de bir algoritmayı içerir ve uygulama ayrıntılarını çağıran sınıflardan ayırır. Benim ayırt edebildiğim tek fark, Strateji modelinin yürütme için parametreleri alırken Komut kalıbı almıyor olmasıdır. Bana öyle geliyor ki komut kalıbı, çalıştırma için tüm bilgilerin yaratıldığında kullanılabilir olmasını gerektiriyor ve çağrılmasını geciktirebiliyor (belki de bir komut …

25
Integer.parseInt () 'i kapsüllemenin iyi bir yolu
Integer.parseInt()String'i int türüne dönüştürmek için sıklıkla kullandığımız bir projem var . Bir şeyler ters gittiğinde (örneğin, Stringbir sayı değil, harf aveya her neyse), bu yöntem bir istisna atacaktır. Ancak, kodumdaki istisnaları her yerde ele almak zorunda kalırsam, bu çok çabuk çirkin görünmeye başlar. Bunu bir yönteme koymak isterim, ancak, dönüşümün …

16
Kapsülleme ve Soyutlama Arasındaki Fark
Bugün bir röportajım vardı. OOP'den Kapsülleme ve Soyutlama arasındaki fark hakkında bir sorum var ? Ona, Encapsulation'ın temelde veri üyelerini ve üye işlevlerini Sınıf adı verilen tek bir birime bağlamak olduğu bilgisine yanıt verdim . Oysa Soyutlama & uygulama gizlemek karmaşıklığına temelde kullanıcılara erişim kolaylığı sağlamaktadır. Cevabıma uyacağını düşündüm. Ancak, …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.