Bilgisayarlar, Programlama
Kapsülleme - bu nedir? programlamada Kapsülleme
Kapsülleme - Bu üç ana özelliklerinden biridir nesne yönelimli programlama (OOP). Diğer iki - polimorfizmi ve miras. Birlikte bu üç ilkeyi kullanarak, farklı dillerde yazı programlarının özellikleri bir dizi ortaya koymaktadır FKÖ çerçevesini oluşturmaktadır. Nesne yönelimli diller, sırayla, kesinlikle onları takip zorundadır.
OOP Temelleri
Nesne yönelimli programlama onun yaratılış üç sütun üzerinde:
- Polimorfizm, belirli bir programlama dili benzer şekilde, birbirleriyle bir ilişki var nesneleri ile nasıl sorusunu yanıtlayan.
- Kalıtım, bir cevap vererek, nasıl yeniden kullanılabilir kod kullanımı uyarılmasıdır.
- uygulanmasını gizleme sorunun cevabı Kapsülleme, böylece veri bütünlüğü gerçekleşir ve.
terminoloji
Kapsülleme (programlama) - son kullanıcıdan kod parçalarını gizlemek için erişim değiştiricileri kullanmaktır. Bunun altında, sırayla, geliştirici veya miras alanlarını ifade eder.
"Encapsulation" kavramının özü
tanım kapsülleme bütün veya program kodunun bir kısmını gizleyerek anlamına belirtir. "Encapsulation" kavramının özü erişim değiştiricileri manipüle etmektir. gizli - Bu geliştirici hangi özellikleri, yöntemleri karar verebilir ve sınıflar istemci sınıfının açık olacak ve ne anlamına gelir.
erişim değiştiricileri
- kamu ( "Kamu" - Kamu, açık erişim) - pay akım sınıflar ve nesneler hem ve dış dünyaya;
- özel ( "prayvat" - özel, özel, gizli erişimi) - özü tamamen öncekinin tersidir, erişime kapattı. Yalnızca geçerli sınıftan erişim sağlar;
- korumalı ( "protekted" - yarı gizli erişim, korumalı) - Geçerli sınıfı ve onun türevleri Erişim;
- Varsayılan - belirtilmemiş erişim değiştirici alan / yöntem paketindeki tüm güncel sınıflar için görülebilir anlamına gelir.
C # dili ( "Si Sharp") olarak, (son hariç) yukarıdakilere ilaveten, yine modifiyeciler vardır:
- İç ( "iç" - dahili erişim) - Geçerli montaj erişilebilirlik, tüm diğer durumlarda kapalı erişim;
- İç korumalı ( "iç protekted" - iç Korumalı Erişim) - iki modifiye birliği birinde hangi ikisinin de apaçık özellikleri.
kapsülleme rolü
Kapsülleme mekanizması içinde gömülü veri kodu ve kötüye dış etkisini ortadan kaldırmaktadır. Bu birine kodu ve verileri bir araya getirerek tamamlanır.
Nesne ve kapsülleme
Bir yazılım modülü ve kod gömülü verilerin uygulanmasını birleştiren programlama bir nesne olarak adlandırılır. Kapsülleme ile bağlantı özü böyle bir yöntem sağlamak ve mekanizması işletiminin bütünlüğünü sağlamak için izin vermesidir.
kapsülleme avantajı
Kapsülleme - kodlama sürecini kolaylaştırmak için bir yol. kod sayıda çizgiler "perde arkasında" dır ve ana sınıfı çalışmalarında örneklerini itiraz edecek.
verilerin korunması fikri
Kapsülleme - bu da veri koruması fikrini anlar bir mekanizmadır. Program mantık nesne yönelimli programlama verilerin en ne olacağını temelinde inşa edilmiştir gizli erişim değiştirici özel (özel, özel) veya korumalı (korumalı). Dış dünya, müşteri yanlışlıkla veya kasten bir yazılım modülü uygulanmasını zarar vermez. aslında bile kasten değil kolaylaştıran çok olduğundan, kapsülleme - bu çok iyi bir ilkedir.
kapsülleme ünitesi
Sınıf, veriler bu veri üzerinde işlem için güçlü bir kod içerir, kapsülleme temel bir birim olarak ve tarif eder. O da nesnenin yapımı için temel oluşturur. İkincisi, sırayla, bir örneği olarak sunulmuştur.
- üyeleri - Bu kod ve sınıfa dahil veridir;
- alanları veya örnek değişkenler - sınıfını tanımlar sözde veriler;
- üye fonksiyonları - onlar kodun kendisini içerir. Üye fonksiyonları - ortak bir isim. Özel bir durum - yöntemleri.
Kapsülleme spesifik bir örneği
Kapsülleme (programlama) Örnek:
* Not:
açıklaması - yöntem / mülk / değişkenin bir açıklama, aslında programda neler olduğunu yorumlarken yani. Bu açma / kapama etiketleri yardımıyla gösterilmiştir
Sistemi kullanılarak;
ad OOPLibrary.Auto
{
///
/// Bu sınıf aracın eylemi açıklamak için tasarlanmıştır
///
public class Oto
{
///
/// için oluşturulan değişkenler, kaç yıldır araba, emlak geliştiricisi dış parazit gereksiz gördüğü beri içinde yazmaya
/// değiştirici (yukarıdaki açıklama bakınız.), Yani kapalı özel erişim özel olarak işaretlendi.
///
özel int _age;
///
/// bir Boole (sadece iki olası değerler - evet ya da hayır), araç şu anda hareket olup olmadığını açıklar
/// Ayrıca son kullanıcıya açık olmalıdır, o her kimse idi. Bu nedenle bu değişken özel erişim değiştirici "prayvat" atanır
///
Özel BOOL _isMoving;
///
/// Bu dize değişkeni arabanın rengi hakkında bilgi içermelidir. Bu dış etkilere tarafından değiştirilebilir
/// renk değiştirici "kamu" açık erişime seçilen için çünkü.
///
Kamu dize Renk;
///
/// Bu özel durumda, biz arabanın adı da değiştirilebilir olduğunu varsayalım
/// (bakılmaksızın sınıf veya montaj, hepsi için açık erişim) halkın bir değiştirici atanan.
///
Kamu dize Adı;
///
/// sınıfı yapıcısı ve ifade değişkenin tüm özelliklerini açar ve değerlerini almak, biraz daha erken ayarlamak
///
Kamu Otomatik ()
{
_age = 5;
= Yanlış _isMoving;
Renk = "Mor";
= "Skoda Octavia" Ad;
}
///
/// yöntem otomatik yaş bir dönüş değeri gerçekleştirmektedir. Bu neden gereklidir?
/// özel erişim değiştirici istemci değişiklikler için mümkün kılmaz.
///
/// arabanın yaşını döndürür.
Kamu dize GetAge ()
{
+ _age + "yıl." "Seçilen makine, şu anda" return;
}
///
araba hareket değilse ///, bu yöntem hareketinin başlangıcını uygular. Kontroller değişken oboznalsya, araç (seyahat ya da değil), ve sonuçlarına bağlı durumu, uygun işlem / mesaj görüntülenir.
///
public void Başlat ()
{
Eğer (_isMoving)
{
Console.WriteLine ( "hareketi zaten başlatıldı");
}
başka
{
= Gerçek _isMoving;
Console.WriteLine ( "Hazır, .. dışına çık!");
}
}
///
Hareket başlatıldı Eğer ///, bu yöntem onu durdurur. kabul önceki durumda olduğu gibi aynı program mantığı.
///
public void Stop ()
{
Eğer (_isMoving)
{
= Yanlış _isMoving;
Console.WriteLine ( "Dur Makinesi");
}
başka
{
Console.WriteLine ( "Hata otomobil ve böylece, hareket etmeyen hala ayakta");
}
}
///
Bir araç varsa ///, sola Uygulanan
///
public void MoveLeft ()
{
Eğer (_isMoving)
{
Console.WriteLine ( "yapılır sola");
}
başka
{
Console.WriteLine ( "Hata araç sabit dönmesi özelliği şu anda mevcut değildir.");
}
}
///
/// doğru dönüş ile benzer bir yöntem
///
public void MoveRight ()
{
Eğer (_isMoving)
{
Console.WriteLine ( "sağa dönün başarıyla hayata geçirildi");
}
başka
{
Console.WriteLine ( "araba Hata nokta şu anda eylem, bunu gerçekleştirmek mümkün değildir sağ Torna taşınmış değil ..");
}
}
}
}
Similar articles
Trending Now