Java Interview Soruları ve Cevapları
Bu bölüm, Java ve Spring ekosisteminde iş görüşmelerinde sıkça sorulan teknik soruları ve detaylı cevaplarını içerir.
1. Temel Java ve OOP Soruları
- Java’nın platform bağımsızlığı nasıl sağlanır?
- OOP prensipleri nelerdir? (SOLID, encapsulation, inheritance, polymorphism, abstraction)
- Interface ve abstract class farkı nedir?
2. JVM ve Bellek Yönetimi
- JVM’in temel bileşenleri nelerdir?
- Garbage Collection nasıl çalışır? Hangi GC algoritmaları vardır?
- Memory leak nedir, nasıl tespit edilir?
3. Concurrency ve Multithreading
- Thread, Runnable, Callable farkı nedir?
- Synchronized, volatile, lock, atomic değişkenler ne işe yarar?
- Deadlock ve race condition nedir, nasıl önlenir?
4. Koleksiyonlar ve Generics
- List, Set, Map farkları ve kullanım senaryoları
- HashMap ile ConcurrentHashMap farkı nedir?
- Generics ile tip güvenliği nasıl sağlanır?
5. Exception Handling ve Best Practices
- Checked/unchecked exception farkı
- Custom exception nasıl yazılır?
- Exception handling’de best practices nelerdir?
6. Spring ve Spring Boot
- Dependency Injection nedir, Spring’de nasıl uygulanır?
- Bean lifecycle, scope, @Component, @Service, @Repository farkları
- Spring Boot ile Spring Framework farkı nedir?
7. Design Patterns ve Best Practices
- Singleton, Factory, Observer, Strategy pattern örnekleri
- Clean code ve refactoring prensipleri
8. Gerçek Mülakat Soruları
- “Bir REST API’de idempotency nasıl sağlanır?”
- “Microservices mimarisinde distributed transaction nasıl yönetilir?”
- “Java’da performans problemi yaşadığınız bir durumu ve çözümünüzü anlatın.”
- “Spring Security ile JWT tabanlı authentication nasıl yapılır?”
Her başlık altında örnek cevaplar, kod parçaları ve ileri seviye detaylar için ilgili alt bölümlere göz atabilirsiniz.