İçindekiler[Saklamak][Göstermek]
- 1. Nesne Yönelimli Programlama tam olarak nedir?
- 2. OOP'ler neden gereklidir?
- 3. OOPS ilkeleri ne gibi faydalar sağlar?
- 4. OOP konseptinin temel direkleri nelerdir?
- 5. Sınıf tam olarak nedir?
- 6. Bir nesne tam olarak nedir?
- 7. OOP'lerin sınırlamaları nelerdir?
- 8. Miras nedir?
- 9. Kapsülleme tam olarak nedir?
- 10. Polimorfizm nedir?
- 11. Soyutlama Tam Olarak Nedir?
- 12. Yöntem aşırı yüklemesi tam olarak nedir?
- 13. Yöntem geçersiz kılma tam olarak nedir?
- 14. Üst sınıf tam olarak nedir?
- 15. Alt sınıf tam olarak nedir?
- 16. Statik polimorfizm tam olarak nedir?
- 17. Dinamik polimorfizm tam olarak nedir?
- 18. Bir Yapıcı kavramını tanımlayın.
- 19. Erişim değiştiricileri tam olarak nedir?
- 20. Yıkıcı tam olarak nedir?
- 21. Hibrit kalıtım tam olarak nedir?
- 22. Hiyerarşik miras tam olarak nedir?
- 23. Mirasın sakıncaları nelerdir?
- 24. Bir istisna tam olarak nedir?
- 25. İstisna işleme tam olarak nedir ve faydaları nelerdir?
- 26. Sanal işlevler tam olarak nedir?
- 27. Arkadaş işlevi tam olarak nedir?
- 28. Çöp Toplama tam olarak nedir?
- 29. Kuplaj tam olarak nedir?
- 30. Uyum tam olarak nedir?
- 31. Bir dene/yakala bloğunu tanımlayın.
- 32. Son bir bloğu tanımlayın.
- 33. Arayüz tam olarak nedir?
- 34. Kompozisyon tam olarak nedir?
- 35. Yapıcı zincirleme tam olarak nedir?
- Sonuç
En etkili programlama paradigmalarından biri OOP'ler veya nesne yönelimli programlama olarak adlandırılır. İşlevler ve süreçler yerine sınıfları ve nesneleri vurgular.
Temel amacı, verileri ve şeyleri, onlarla çalışmanın daha kolay olması için birbirine bağlamaktır. OOP'lerdeki her nesne, prosedürler veya yöntemler biçimindeki kodlardan ve alanlar biçimindeki verilerden oluşur.
C++, Objective C, Python, Perl ve Java gibi diller en popüler nesne yönelimli dillerden bazılarıdır. Programlama dilleri.
Ayy mülakat soruları son derece tipik olduğundan, bunu daha fazla anlamak çok önemlidir. Çoğu firma, nesne yönelimli yöntemlere ve kalıplara aşina olan mühendisler arıyor. Bu nedenle, bir röportaja katılmayı düşünüyorsanız, OOP fikirleri konusunda bilgili olmalısınız.
Bu gönderide başlangıç seviyesinden uzman seviyesine kadar çeşitli nesne yönelimli programlama mülakat soruları gösterilecektir. Bu nedenle, herhangi bir mülakat seviyesini geçebilir ve hayalinizdeki pozisyonu güvence altına alabilirsiniz.
1. Nesne Yönelimli Programlama tam olarak nedir?
Nesne yönelimli programlama (OOP'ler), yalnızca işlevler ve işlemlerden ziyade gerçek nesnelere dayanır. Bireysel ürünler için sınıflar oluşturulur.
Kalıtım, polimorfizm ve gizleme, OOP'lerin programlamaya dahil ettiği gerçek dünya kavramlarının örnekleridir. Ayrıca veri ve kodu bağlamayı mümkün kılar.
2. OOP'ler neden gereklidir?
OOP'lerin tercih edilmesinin birkaç nedeni vardır, ancak aşağıdakiler en önemlileridir:
- OOP'ler, insanların uygulamaya aşina olmasalar bile yazılımı kolayca anlamalarını sağlar.
- Hata, kodun okunabilirliğini, anlaşılabilirliğini ve sürdürülebilirliğini on kat artırın.
- OOP'leri kullanarak, son derece büyük uygulamalar bile kolayca oluşturulabilir ve kontrol edilebilir.
3. OOPS ilkeleri ne gibi faydalar sağlar?
- OOPS, programlama nesneleri gerçek dünya nesnelerini simüle ederek karmaşıklığı azaltır ve program netliğini artırır.
- Nesneler birçok programda tekrar tekrar kullanılabilir.
- Her nesne, dahili işlemleri diğer sistem bileşenlerinden bağımsız olan ayrı bir varlık oluşturur.
- Birkaç yeni nesne tanıtarak ve mevcut olanlardan birkaçını güncelleyerek, yeni işlevler eklemek veya değişen çalışma koşullarına uyum sağlamak mümkündür.
- Bir OOP programının süreçleri veya veri gösterimi kolayca küçük ayarlamalardan geçebilir.
4. OOP konseptinin temel direkleri nelerdir?
Aşağıdakiler, OOP'nin ana direkleridir:
miras: Sınıfların başka bir sınıfın niteliklerini devralmasını sağlar.
Encapsulation: Bu, kritik bilgileri gizleyen bir nesne özelliği olarak tanımlanır. Bu, verileri sınıf üyelerinden gizli tutar. Belirticiler, nesnenin özniteliğine kodda nasıl erişildiğini açıklar.
Polimorfizm: Bu, tek bir etkinliği çeşitli şekillerde gerçekleştirmenize olanak tanır. Daha sonra birkaç kez uygulanan bir arabirim ilan ettiğimiz arabirimler aracılığıyla gerçekleştirilir.
Soyutlama: Bu işlevi, kritik bilgileri dış dünyadan gizlemek ve yalnızca temel gerçekleri sunmak için kullanabilirsiniz.
5. Sınıf tam olarak nedir?
Sınıf, çeşitli durumlarda ve değişen davranışlara sahip nesnelerden oluşan bir prototiptir. O sınıftaki nesneler tarafından paylaşılan bir dizi metoda sahiptir.
6. Bir nesne tam olarak nedir?
Bir nesne, sandalye, kedi veya köpek gibi OOP'lerin temel birimi olarak hizmet eden gerçek dünyadaki bir varlıktır. Çeşitli nesnelerin çeşitli durumları, özellikleri ve eylemleri vardır.
7. OOP'lerin sınırlamaları nelerdir?
- Boyut diğer uygulamalardan daha büyüktür.
- Biraz alışmak gerekiyor.
- Bazı tür problemler bunu gerektirmez.
- Oluşturması emek yoğundu ve diğer uygulamalara kıyasla daha yavaş çalışıyor.
8. Miras nedir?
Kalıtım adı verilen bir kavram, bir sınıfın yerleşik yapısının ve davranışının başka bir sınıf tarafından paylaşılmasını ifade eder. Kalıtım tek bir sınıfa uygulandığında, tek miras olarak adlandırılır; birçok sınıfa bağlı olduğunda, çoklu kalıtım olarak adlandırılır.
9. Kapsülleme tam olarak nedir?
OOP fikri, kapsüllemeyi de içerir. Verilerin harmanlanmasını ve veri işleme tekniklerini açıklar. Ek olarak, bir nesnenin bazı bölümlerine doğrudan erişimin önlenmesine yardımcı olur.
10. Polimorfizm nedir?
OOP dillerinde polimorfizm temel bir kavramdır. Farklı sınıfların bir arayüzü nasıl paylaşabileceğini gösterir. Bu sınıfların tümü benzersiz arabirim uygulamalarına sahip olma yeteneğine sahiptir.
11. Soyutlama Tam Olarak Nedir?
Soyutlama, gerçek dünyadaki nesnelerin yapısını oluşturmak için kullanılan nesne yönelimli programlama (OOP'ler) kavramıdır. Sadece en önemli nitelikleri “görüntüler” ve dış dünyadan yabancı bilgileri “gizler”. Soyutlamanın temel amacı, insanları gereksiz bilgilerden korumaktır.
12. Yöntem aşırı yüklemesi tam olarak nedir?
İki veya daha fazla prosedürün aynı ada sahip olması mümkündür. Bununla birlikte, farklı parametrelere, farklı sayıda parametreye, farklı türlere veya her ikisine de sahip olmalıdırlar. Bunlar aşırı yüklenmiş yöntemler olarak bilinir ve özellik, yöntem aşırı yüklemesi olarak bilinir.
13. Yöntem geçersiz kılma tam olarak nedir?
Nesne yönelimli programlama, yöntemi geçersiz kılma fikrini içerir. Bir alt sınıfın veya alt sınıfın, üst sınıflarından veya üst sınıflarından birinin zaten sağladığı bir yöntemin özelleştirilmiş bir uygulamasını sunmasını sağlayan bir dil özelliğidir.
14. Üst sınıf tam olarak nedir?
Genellikle temel sınıf olarak bilinen bir üst sınıf, başka bir sınıfın veya sınıfların ebeveyni olarak hareket eden bir sınıf türüdür. Örneğin Car sınıfının Vehicle adlı bir alt sınıfı vardır.
15. Alt sınıf tam olarak nedir?
Bir alt sınıf, başka bir sınıfın alt sınıfıdır. Örneğin bir minibüs, bir Araç alt sınıfı veya türetilmiş bir sınıftır.
16. Statik polimorfizm tam olarak nedir?
Derleme zamanında, statik polimorfizm (statik bağlama) olarak bilinen bir tür polimorfizm gerçekleşir. Yöntem aşırı yüklemesi, bir tür derleme zamanı polimorfizmidir.
17. Dinamik polimorfizm tam olarak nedir?
Çalışma zamanında çözülen bir tür polimorfizm, dinamik polimorfizm (dinamik bağlama) olarak da bilinen çalışma zamanı polimorfizmi olarak adlandırılır. Yöntemlerin geçersiz kılınması, çalışma zamanı polimorfizminin bir örneğidir.
18. Bir Yapıcı kavramını tanımlayın.
Yapıcı, bir sınıf örneği oluşturulduğunda otomatik olarak çağrılan bir sınıfın belirli bir yöntemidir. Sınıfa eriştiğinizde, sınıfla aynı adla oluşturulur ve tüm üyelerini başlatır. Bir kurucunun temel özellikleri aşağıdaki gibidir:
Yapıcılar için dönüş türü yoktur.
Yapıcıların aşırı yüklenmesi mümkündür.
Bir kurucu belirtmek gerekli değildir; the.NET Framework bunu otomatik olarak yapacaktır.
19. Erişim değiştiricileri tam olarak nedir?
Nesne yönelimli dillerde anahtar sözcükler erişim değiştiricileri veya erişim belirleyicileridir. Sınıfların, yöntemlerin ve diğer üyelerin erişilebilirliğinin yapılandırılmasına yardımcı olur.
20. Yıkıcı tam olarak nedir?
Yıkıcı, bir nesneye atanan kaynakları serbest bırakmak için bir yöntemdir. Bir nesne yok edildiğinde, bu yöntem otomatik olarak çağrılır.
21. Hibrit kalıtım tam olarak nedir?
Hibrit kalıtım, tekli, çoklu vb. Gibi çeşitli kalıtım biçimlerinin karıştırılmasıyla oluşturulan bir tür kalıtımdır.
22. Hiyerarşik miras tam olarak nedir?
Birden çok alt sınıf, hiyerarşik kalıtım durumunda bir üst sınıftan miras alır. Çok sayıda sınıfın tek bir ebeveyn veya temel sınıftan türediği bir tür kalıtım, hiyerarşik kalıtım olarak bilinir. Örneğin, meyve sınıfı "elma", "mango", "muz", "kiraz" gibi alt sınıfları içerebilir.
23. Mirasın sakıncaları nelerdir?
Yürütme sürecini uzatır ve zorlaştırır. Ayrıca çeşitli sınıflar arasında geçiş yapmayı gerektirir. Ebeveyn ve alt sınıflar her zaman ayrılmaz bir şekilde bağlantılıdır.
Müfredatta yapılacak değişiklikler, hem ebeveyn hem de çocuğun sınıfı için revizyonlar gerektirecektir. Kalıtım dikkatli bir şekilde uygulanmalıdır, aksi takdirde sonuçlar yanlış olacaktır.
24. Bir istisna tam olarak nedir?
İstisna, kodun olağan çalışmasına müdahale eden bir olaydır. Yürütmeye devam etmek için bu istisnaları Java'da işleyebilirsiniz. Java'da, önceden tanımlanmış birçok istisna türü vardır ve yükseltilmiş istisnaları try-catch blokları kullanarak kontrol etmek için istisna işleme sağlanır.
25. İstisna işleme tam olarak nedir ve faydaları nelerdir?
Beklenmeyen çalışma zamanı hatalarıyla başa çıkmak için Java'daki en önemli yöntem, istisna işlemedir. Program yürütme sırasında ortaya çıkan çalışma zamanı hatalarını kontrol etmenizi sağlar.
İstisna işlemenin faydaları, istisnaları yönetirken düzenli program akışını koruma yeteneğini içerir. Örneğin, programın bir bölümünde bir hata meydana gelirse, istisnayı try-catch bloklarıyla ele alırsak, programın geri kalanı üzerinde hiçbir etkisi olmayacaktır.
26. Sanal işlevler tam olarak nedir?
Sanal işlevler de ana sınıfın işlevlerine dahil edilir ve alt sınıf tarafından geçersiz kılınır. Bu rutinler, çalışma zamanı polimorfizminin elde edilmesine yardımcı olur.
27. Arkadaş işlevi tam olarak nedir?
Bir arkadaş işlevi, bir sınıfa ait olan ve onun genel, özel veya korumalı verilerine erişmesine izin verilen bir işlevdir. Eğer fonksiyon sınıfın dışında tanımlanmışsa bu veriyi almak mümkün değildir. Özel, genel ve korumalı erişim denetimi anahtar sözcüklerinin, sınıf bildiriminin herhangi bir yerinde yapılabilecek bir arkadaş bildirimi ile hiçbir ilgisi yoktur.
28. Çöp Toplama tam olarak nedir?
Çöp toplama (GC), bir bellek kurtarma sistemi olarak hizmet veren C# ve Java gibi programlama dillerinin bir öğesidir. Çöp toplama (GC) motoru, uygulamanın artık kullanmadığı nesneler için otomatik bellek alanı serbest bırakılmasına izin veren bir programlama dili bileşenidir.
29. Kuplaj tam olarak nedir?
Çeşitli sınıfların birbirine güvendiği ve bilgiyi paylaştığı durumları ifade eder. Bir sınıf başka bir sınıf hakkında ayrıntılı bilgiye sahip olduğunda güçlü bir bağlantı oluşur. Erişim değiştiricileri kullanarak sınıfların, yöntemlerin veya değişkenlerin görünürlüğünü belirleyebilirsiniz. Arayüzler, daha zayıf bağlantı sağlamak için kullanılır.
30. Uyum tam olarak nedir?
Bir bileşenin belirli bir aktiviteyi gerçekleştirme şekli, onun uyumu olarak adlandırılır. Güçlü, uyumlu bir yaklaşım, tanımlanan görevi basitçe yerine getirirken, zayıf, uyumlu bir yöntem, tek bir görevi birkaç küçük göreve böler ve ardından bunları tamamlar.
Java.io paketi oldukça tutarlıdır, ancak java.util paketi değildir.
31. Bir dene/yakala bloğunu tanımlayın.
Bir program yanlış kod veya veri nedeniyle bir hatayla karşılaştığında, "dene" ve "yakala", programın nasıl yönetileceğini gösterir. Try bloğu, istisnalar meydana geldiğinde kodun parçasının adıdır. Try bloklarından istisnaları yakalamak ve bunlarla başa çıkmak için bir yakalama bloğu kullanılır.
32. Son bir bloğu tanımlayın.
Try anahtar sözcüğünün çalışan kod kısmı en son belirtilir. Her zaman denemeden hemen sonra çalıştırılan kodu ve yöntem tamamlanmadan önce tüm yakalama bloklarını belirtir. Bir istisna atılsa veya yakalansa da, son blok her zaman çalıştırılır.
33. Arayüz tam olarak nedir?
Arayüz, soyut yöntemlerin ve kullanıcı tanımlı bir veri türünün birleşimidir. Bir sınıf, arabirimin soyut işlevlerini devralan bir arabirim uygular.
Bir sınıf, bir nesnenin özelliklerini ve davranışlarını temsil ederken, bir arabirim, bir sınıfın uyguladığı davranışları içerir. Arayüz "ne"yi temsil ederken, Sınıf "nasıl"ı iletir.
34. Kompozisyon tam olarak nedir?
Bileşim, bir bağlantı elde etmek için kullanılabilir. Toplama yerine bağımlı ve bağımsız nesneler arasında güçlü bir nesne bağlantısı olduğunu gösterir. Bu durumda bağımlı nesne mevcut değildir ve ana nesne silinirse kaldırılacaktır.
35. Yapıcı zincirleme tam olarak nedir?
Yapıcı zincirleme, mevcut nesne referansına göre bir yapıcıyı diğerinden çağırmak için kullanılan bir tekniktir. İki seçenek var:
- Geçerli sınıftaki yapıcıya "this" anahtar sözcüğü kullanılarak başvurulabilir.
- Yapıcıyı temel sınıftan çağırmak için "super" anahtar sözcüğü kullanılacaktır.
Sonuç
Nesneye Yönelik programlama, programın yapısı hakkında düşünmeyi ve önceden hazırlanmayı gerektirir. Gereksinimlerin, nesnelerin örneklerini oluşturmak için kullanılabilecek temel, yeniden kullanılabilir sınıflara nasıl bölüneceğinin incelenmesi.
Genel olarak, OOP'yi benimsemek gelişmiş veri yapıları ve uzun vadede zaman kazandıran yeniden kullanılabilirlik. Görmek Hashdork'un Röportaj Serisi Mülakat hazırlığı konusunda yardım için.
Yorum bırak