CodeBlanks Logo Icon CodeBlanks
Ücretsiz 4 seviye Java

Java

Modern Java 21 ile değişkenlerden OOP, lambda, stream ve uzman seviye konulara kadar tüm temelleri öğrenin.

Java kursu değişkenler, OOP, miras, lambda, stream API, JUnit, multithreading, JVM internals ve bytecode ile tüm seviyeleri kapsar. Her seviye projeler ve meydan okumalarla biter.

  • 360 ders
  • 29 sa 30 dk
  • 12 proje

Hesap gerekmez, hemen başlayabilirsin. İlerlemeni kaydetmek istersen ücretsiz hesap aç

Seviyeler

Java kursu dört seviyede sıfırdan uzmanlığa ilerler. İstediğin seviyeden başlayabilirsin.
Seviyeni bilmiyor musun? Seviye testini çöz
Başlangıç

Java 21 temellerini öğrenirsin: main metodu, değişkenler, veri türleri, döngüler, diziler, koleksiyonlar, metotlar ve istisna temelleri.

  • Java temelleri
  • Değişkenler
  • Veri türleri
  • Operatörler
116 ders · 8 sa 46 dk Dersleri gör →
Orta

Orta seviye

Java'da sınıflar, miras, encapsulation, interface, abstract sınıflar, dosya I/O, serileştirme, generics ve lambda ile stream temellerini öğrenirsin.

  • Sınıflar
  • Yapıcı
  • Miras
  • Encapsulation
116 ders · 9 sa 44 dk Dersleri gör →
İleri

İleri seviye

Java'da ileri stream, Optional, functional interface, java.time, reflection, annotation, tasarım desenleri, JUnit, Mockito, multithreading ve concurrent API öğrenirsin.

  • Stream ileri
  • Optional
  • Functional interface
  • Date/time API
82 ders · 7 sa 0 dk Dersleri gör →
Uzman

Java'da JVM iç yapıları, bellek modeli, NIO, reactive, JNI, performans ve GC ayarı, bytecode ve mikro hizmet temelleri öğrenirsin.

  • JVM internals
  • Memory model
  • NIO
  • Reactive
46 ders · 4 sa 0 dk Dersleri gör →

Yapacağın projeler

Her seviyede öğrendiklerini gerçek bir sayfada birleştirirsin.

Nasıl çalışıyor?

Kısa anlatım

Her ders tek bir kavramı birkaç kısa kartla anlatır; uzun video ya da metin yok.

Hemen dene

Çoktan seçmeli, boşluk doldurma ve eşleştirme sorularıyla öğrendiğini anında pekiştirirsin.

Kendin yaz

Tarayıcıdaki editörde gerçek kod yazarsın; kodun anında kontrol edilir ve sonucu canlı görürsün.

Müfredat

62 grup · 360 ders · 29 sa 30 dk

Java 21 temellerini öğrenirsin: main metodu, değişkenler, veri türleri, döngüler, diziler, koleksiyonlar, metotlar ve istisna temelleri.

1
Java temelleri
6 ders · 24 dk
  1. 1 Java nedir? Java'nın derlemeli, nesne yönelimli ve platform bağımsız bir dil olduğunu öğrenirsin. 4 dk
  2. 2 main metodu main(String[] args) ve System.out.println ile çıktı almayı öğrenirsin. 4 dk
  3. 3 Yorumlar // tek satır ve /* */ çok satırlı yorumları öğrenirsin. 3 dk
  4. 4 Sınıf iskeleti public class ve statik metot yapısını öğrenirsin. 4 dk
  5. 5 javac ve java Komut satırından derleme ve çalıştırmayı öğrenirsin. 4 dk
  6. 6 Özet - Java temelleri main, yorum ve sınıf iskeletini birleştirerek ilk Java programını yazarsın. 5 dk
2
Değişkenler
6 ders · 24 dk
  1. 1 int ve double int ve double ile sayı değişkenlerini öğrenirsin. 4 dk
  2. 2 boolean boolean ile true/false değerini öğrenirsin. 3 dk
  3. 3 String String ile metin değişkenlerini öğrenirsin. 4 dk
  4. 4 Değişken adlandırma camelCase ve geçerli adlandırma kurallarını öğrenirsin. 4 dk
  5. 5 final değişken final ile sabit değerli değişkenleri öğrenirsin. 4 dk
  6. 6 Özet - Değişkenler int, double ve String'i birleştirerek bir profil kartı yazarsın. 5 dk
3
Veri türleri
6 ders · 26 dk
  1. 1 İlkel türler byte, short, int, long, float, double, char, boolean ilkel türlerini öğrenirsin. 4 dk
  2. 2 Tür dönüştürme (int), (double) ile tür dönüştürmeyi öğrenirsin. 4 dk
  3. 3 String birleştirme + ile metin birleştirmeyi öğrenirsin. 4 dk
  4. 4 Math sınıfı Math.abs, Math.max ile matematiksel işlemleri öğrenirsin. 4 dk
  5. 5 BigInteger ve BigDecimal Büyük sayılarla hassas hesap yapmayı öğrenirsin. 5 dk
  6. 6 Özet - Veri türleri İlkel türleri, Math ve BigDecimal'i birleştirerek bir faiz hesaplayıcı yazarsın. 5 dk
4
Proje: Hesap makinesiProje
5 ders · 30 dk
  1. 1 Proje tasarımı Hesap makinesi sınıfının iskeletini tasarlarsın. 6 dk
  2. 2 Toplama/çıkarma Toplama ve çıkarma metotlarını yazarsın. 6 dk
  3. 3 Çarpma/bölme Çarpma, bölme ve sıfır kontrolü eklersin. 6 dk
  4. 4 Hata yönetimi try/catch ile geçersiz girdileri yakalarsın. 6 dk
  5. 5 Birleştirme Menü döngüsüyle çalışan hesap makinesini yazarsın. 6 dk
5
Operatörler
6 ders · 25 dk
  1. 1 Aritmetik +, -, *, /, % operatörlerini öğrenirsin. 4 dk
  2. 2 Karşılaştırma ==, !=, <, >, <=, >= operatörlerini öğrenirsin. 4 dk
  3. 3 Mantıksal &&, ||, ! ile boolean mantık öğrenirsin. 4 dk
  4. 4 Bitsel &, |, ^, ~, <<, >> bitsel operatörlerini öğrenirsin. 4 dk
  5. 5 Atama ve artırma =, +=, ++, -- atama ve artırma operatörlerini öğrenirsin. 4 dk
  6. 6 Özet - Operatörler Aritmetik, karşılaştırma ve mantıksal operatörlerle not hesaplayıcı yazarsın. 5 dk
6
Dize temelleri
6 ders · 25 dk
  1. 1 length ve charAt length() ve charAt() ile dize erişimini öğrenirsin. 4 dk
  2. 2 equals ve equalsIgnoreCase equals() ile dize karşılaştırmayı öğrenirsin. 4 dk
  3. 3 indexOf ve substring indexOf() ve substring() ile arama ve dilim öğrenirsin. 4 dk
  4. 4 toUpperCase ve trim toUpperCase() ve trim() ile dönüştürme öğrenirsin. 4 dk
  5. 5 String.format String.format() ile biçimlendirme öğrenirsin. 4 dk
  6. 6 Özet - Dize temelleri length, substring ve format'ı birleştirerek kartvizit yazarsın. 5 dk
7
Koşullar
6 ders · 25 dk
  1. 1 if deyimi if ile koşul kontrolünü öğrenirsin. 4 dk
  2. 2 else ve else if else ve else if ile alternatif durumları öğrenirsin. 4 dk
  3. 3 İç içe if İç içe if bloklarını öğrenirsin. 4 dk
  4. 4 switch switch ile çoklu dalı öğrenirsin. 4 dk
  5. 5 Ternary ? : ile tek satır koşulu öğrenirsin. 4 dk
  6. 6 Özet - Koşullar if, else if, switch ve ternary'i birleştirerek bir hafta günü uygulaması yazarsın. 5 dk
8
Döngüler
6 ders · 24 dk
  1. 1 for döngüsü for ile sayma döngüsünü öğrenirsin. 4 dk
  2. 2 while döngüsü while ile koşullu döngüyü öğrenirsin. 4 dk
  3. 3 do-while do-while ile en az bir kez çalışan döngüyü öğrenirsin. 4 dk
  4. 4 break ve continue break ile döngüden çıkmayı, continue ile atlamayı öğrenirsin. 3 dk
  5. 5 for-each for-each ile dizi ve koleksiyon gezmeyi öğrenirsin. 4 dk
  6. 6 Özet - Döngüler for, while ve for-each'i birleştirerek çarpım tablosu yazarsın. 5 dk
9
Proje: Alışveriş sepetiProje
5 ders · 30 dk
  1. 1 Sepet tasarımı Alışveriş sepeti sınıfının iskeletini tasarlarsın. 6 dk
  2. 2 Ürün ekleme addItem ile sepete ürün eklersin. 6 dk
  3. 3 Toplam hesaplama Ara toplam ve vergi dahil toplamı hesaplarsın. 6 dk
  4. 4 Miktar güncelleme updateQuantity ve removeItem ile sepeti yönetirsin. 6 dk
  5. 5 Birleştirme Sepet sınıfını menü döngüsüyle birleştirirsin. 6 dk
10
Diziler
6 ders · 25 dk
  1. 1 Dizi tanımlama new int[n] ile dizi tanımlamayı öğrenirsin. 4 dk
  2. 2 Dizi erişimi arr[i] ile erişim ve length öğrenirsin. 4 dk
  3. 3 Dizi doldurma for ile dizi doldurmayı öğrenirsin. 4 dk
  4. 4 Çok boyutlu dizi int[][] ile matris öğrenirsin. 4 dk
  5. 5 Dizi kopyalama System.arraycopy ile kopyalamayı öğrenirsin. 4 dk
  6. 6 Özet - Diziler Tanımlama, doldurma ve matrisi birleştirerek bir sınıf listesi yazarsın. 5 dk
11
Array metotları
6 ders · 26 dk
  1. 1 Arrays.sort Arrays.sort ile sıralamayı öğrenirsin. 4 dk
  2. 2 Arrays.toString Arrays.toString ile dizi yazdırmayı öğrenirsin. 4 dk
  3. 3 Arrays.binarySearch Arrays.binarySearch ile ikili aramayı öğrenirsin. 5 dk
  4. 4 Arrays.copyOf Arrays.copyOf ile kopyalamayı öğrenirsin. 4 dk
  5. 5 Arrays.fill Arrays.fill ile dizi doldurmayı öğrenirsin. 4 dk
  6. 6 Özet - Array metotları sort, binarySearch ve toString'i birleştirerek bir sıralama aracı yazarsın. 5 dk
12
Koleksiyonlar
6 ders · 26 dk
  1. 1 ArrayList ArrayList ile dinamik dizi öğrenirsin. 4 dk
  2. 2 add ve get add() ve get() ile koleksiyon işlemlerini öğrenirsin. 4 dk
  3. 3 HashMap HashMap ile anahtar-değer eşlemesini öğrenirsin. 5 dk
  4. 4 put ve get put() ve get() ile harita işlemlerini öğrenirsin. 4 dk
  5. 5 HashSet HashSet ile benzersiz eleman kümesini öğrenirsin. 4 dk
  6. 6 Özet - Koleksiyonlar ArrayList, HashMap ve HashSet'i birleştirerek bir telefon rehberi yazarsın. 5 dk
13
Metotlar
6 ders · 24 dk
  1. 1 Metot tanımlama static metot tanımlamayı öğrenirsin. 4 dk
  2. 2 return return ile değer döndürmeyi öğrenirsin. 4 dk
  3. 3 void metot void ile değer döndürmeyen metodu öğrenirsin. 3 dk
  4. 4 Metot aşırı yükleme Aynı isimli metotları öğrenirsin. 4 dk
  5. 5 Kapsam Metot içi değişken kapsamını öğrenirsin. 4 dk
  6. 6 Özet - Metotlar return, overloading ve kapsamı birleştirerek bir hesap yardımcı yazarsın. 5 dk
14
Metot parametreleri
6 ders · 26 dk
  1. 1 İlkel parametre İlkel türde parametre geçmeyi öğrenirsin. 4 dk
  2. 2 Nesne parametresi Nesne referansı geçmeyi öğrenirsin. 4 dk
  3. 3 varargs int... ile esnek parametreyi öğrenirsin. 5 dk
  4. 4 Dizi ile çoklu değer Dizi döndürerek çoklu değer aktarmayı öğrenirsin. 4 dk
  5. 5 final parametre final parametrelerle değiştirilemezliği öğrenirsin. 4 dk
  6. 6 Özet - Metot parametreleri İlkel, nesne ve varargs'ı birleştirerek bir istatistik fonksiyonu yazarsın. 5 dk
15
Proje: Yapılacaklar listesiProje
5 ders · 30 dk
  1. 1 Görev modeli Task sınıfını tasarlarsın. 6 dk
  2. 2 Görev ekleme addTask ile listeye görev eklersin. 6 dk
  3. 3 Görev listeleme listTasks ile görevleri yazdırırsın. 6 dk
  4. 4 Görev tamamlama completeTask ile durumu güncellersin. 6 dk
  5. 5 Birleştirme Menü döngüsüyle CLI uygulaması yazarsın. 6 dk
16
String builder
6 ders · 25 dk
  1. 1 StringBuilder StringBuilder ile değiştirilebilir metin öğrenirsin. 4 dk
  2. 2 append append ile metin eklemeyi öğrenirsin. 4 dk
  3. 3 insert ve delete insert ve delete ile metin düzenlemeyi öğrenirsin. 4 dk
  4. 4 reverse reverse ile metni ters çevirmeyi öğrenirsin. 4 dk
  5. 5 toString toString ile dize elde etmeyi öğrenirsin. 4 dk
  6. 6 Özet - String builder append, insert ve reverse'i birleştirerek bir rapor üreteci yazarsın. 5 dk
17
Girdi ve çıktı
6 ders · 28 dk
  1. 1 Scanner Scanner ile kullanıcıdan girdi almayı öğrenirsin. 4 dk
  2. 2 nextInt ve nextLine nextInt() ve nextLine() ile tür dönüşümü öğrenirsin. 5 dk
  3. 3 System.out.printf printf ile biçimli çıktıyı öğrenirsin. 4 dk
  4. 4 BufferedReader BufferedReader ile verimli okumayı öğrenirsin. 5 dk
  5. 5 try-with-resources try-with-resources ile kaynak yönetimini öğrenirsin. 5 dk
  6. 6 Özet - Girdi ve çıktı Scanner, printf ve BufferedReader'ı birleştirerek etkileşimli menü yazarsın. 5 dk
18
Enum
6 ders · 25 dk
  1. 1 Enum tanımlama enum ile sabit kümesini öğrenirsin. 4 dk
  2. 2 values ve valueOf values() ve valueOf() ile enum işlemlerini öğrenirsin. 4 dk
  3. 3 Enum özellikleri Enum sabitlerine özellik eklemeyi öğrenirsin. 4 dk
  4. 4 Enum metotları Enum içinde metot tanımlamayı öğrenirsin. 4 dk
  5. 5 switch ile enum switch ile enum kullanmayı öğrenirsin. 4 dk
  6. 6 Özet - Enum values, metot ve switch'i birleştirerek bir mevsim uygulaması yazarsın. 5 dk
19
İstisna temelleri
6 ders · 28 dk
  1. 1 try/catch try/catch ile istisna yakalamayı öğrenirsin. 5 dk
  2. 2 finally finally bloğunu öğrenirsin. 4 dk
  3. 3 throw throw ile istisna fırlatmayı öğrenirsin. 4 dk
  4. 4 Exception hiyerarşisi RuntimeException, IOException gibi istisnaları öğrenirsin. 5 dk
  5. 5 Çoklu catch Birden çok catch bloğunu öğrenirsin. 5 dk
  6. 6 Özet - İstisna temelleri try/catch/finally ve throw'u birleştirerek bir banka hesabı sınıfı yazarsın. 5 dk
20
Başlangıç finaliProje
5 ders · 30 dk
  1. 1 Proje tasarımı Başlangıç finali iskeletini tasarlarsın. 6 dk
  2. 2 Veri modeli Veri modelini ve koleksiyonları kurarsın. 6 dk
  3. 3 İş mantığı Metotlar ve koşullarla iş kurallarını yazarsın. 6 dk
  4. 4 Hata yönetimi try/catch ile girdi doğrulama eklersin. 6 dk
  5. 5 Birleştirme Tüm parçaları birleştirerek çalışan bir uygulama yazarsın. 6 dk

Java'da sınıflar, miras, encapsulation, interface, abstract sınıflar, dosya I/O, serileştirme, generics ve lambda ile stream temellerini öğrenirsin.

1
Sınıflar
6 ders · 26 dk
  1. 1 class class ile sınıf tanımlamayı öğrenirsin. 5 dk
  2. 2 Öznitelikler Sınıf ve örnek özniteliklerini öğrenirsin. 4 dk
  3. 3 Metotlar Sınıf içinde metot tanımlamayı ve this'i öğrenirsin. 4 dk
  4. 4 new new ile nesne oluşturmayı öğrenirsin. 4 dk
  5. 5 toString toString ile nesne gösterimini öğrenirsin. 4 dk
  6. 6 Özet - Sınıflar Öznitelik ve metotları birleştirerek bir User sınıfı yazarsın. 5 dk
2
Yapıcı
6 ders · 28 dk
  1. 1 Yapıcı temelleri Sınıf yapıcı metodunu öğrenirsin. 5 dk
  2. 2 Parametreli yapıcı Parametre alan yapıcıyı öğrenirsin. 5 dk
  3. 3 Yapıcı aşırı yükleme Aynı sınıfta birden çok yapıcıyı öğrenirsin. 4 dk
  4. 4 this() this() ile yapıcı çağırmayı öğrenirsin. 5 dk
  5. 5 Varsayılan yapıcı Derleyicinin eklediği varsayılan yapıcıyı öğrenirsin. 4 dk
  6. 6 Özet - Yapıcı Parametreli yapıcı ve this()'i birleştirerek bir Product sınıfı yazarsın. 5 dk
3
Miras
6 ders · 29 dk
  1. 1 extends extends ile miras almayı öğrenirsin. 5 dk
  2. 2 super super ile üst sınıfı çağırmayı öğrenirsin. 5 dk
  3. 3 Metot geçersiz kılma Türetilmiş sınıfta metodu geçersiz kılmayı öğrenirsin. 4 dk
  4. 4 Object sınıfı Object sınıfını ve equals/hashCode'u öğrenirsin. 5 dk
  5. 5 final sınıf ve metot final ile devralınmazlığı öğrenirsin. 5 dk
  6. 6 Özet - Miras super ve override'ı birleştirerek bir şekil hiyerarşisi yazarsın. 5 dk
4
Proje: KütüphaneProje
5 ders · 30 dk
  1. 1 Sınıf tasarımı Kütüphane sınıflarının iskeletini tasarlarsın. 6 dk
  2. 2 Kitap modeli Book sınıfını ve yapıcısını yazarsın. 6 dk
  3. 3 Üye yönetimi Member ile üye kaydı yaparsın. 6 dk
  4. 4 Ödünç akışı borrow ve return ile ödünç işlemlerini yazarsın. 6 dk
  5. 5 Birleştirme Kütüphane sınıfını menü döngüsüyle birleştirirsin. 6 dk
5
Encapsulation
6 ders · 28 dk
  1. 1 private alan private ile alan gizlemeyi öğrenirsin. 4 dk
  2. 2 Getter getX ile alıcı metodu öğrenirsin. 5 dk
  3. 3 Setter setX ile ayarlayıcı ve doğrulamayı öğrenirsin. 5 dk
  4. 4 Paket görünürlüğü Paket düzeyinde görünürlüğü öğrenirsin. 4 dk
  5. 5 Record record ile değişmez veri sınıfını öğrenirsin. 5 dk
  6. 6 Özet - Encapsulation private, getter ve setter'ı birleştirerek bir Account sınıfı yazarsın. 5 dk
6
Static
6 ders · 28 dk
  1. 1 static alan static alan ile sınıf düzeyi durumu öğrenirsin. 5 dk
  2. 2 static metot static metotları ve Math örneğini öğrenirsin. 5 dk
  3. 3 static blok static blok ile sınıf başlatmayı öğrenirsin. 5 dk
  4. 4 Sınıf değişkenleri Sınıf değişkenlerini paylaşmayı öğrenirsin. 4 dk
  5. 5 instanceof instanceof ile tür kontrolünü öğrenirsin. 4 dk
  6. 6 Özet - Static static alan, metot ve bloğu birleştirerek bir Configuration sınıfı yazarsın. 5 dk
7
Sabitler
6 ders · 27 dk
  1. 1 static final static final ile sabit tanımlamayı öğrenirsin. 4 dk
  2. 2 Büyük harf kuralı Sabit adlandırma büyük harf kuralını öğrenirsin. 4 dk
  3. 3 Enum ile sabit Enum ile sabit kümesi tanımlamayı öğrenirsin. 5 dk
  4. 4 Interface sabitleri Interface içinde sabit tanımlamayı öğrenirsin. 5 dk
  5. 5 Math sabitleri Math.PI gibi hazır sabitleri öğrenirsin. 4 dk
  6. 6 Özet - Sabitler static final ve enum sabitleri birleştirerek bir birim dönüşüm sınıfı yazarsın. 5 dk
8
Proje: Quiz uygulamasıProje
5 ders · 30 dk
  1. 1 Quiz modeli Question ve Quiz sınıflarının iskeletini tasarlarsın. 6 dk
  2. 2 Soru ekleme addQuestion ile quiz'e soru eklersin. 6 dk
  3. 3 Quiz oynatma run ile soruları sırayla sorarsın. 6 dk
  4. 4 Skor hesaplama score ile doğru sayısını ve yüzdesini hesaplarsın. 6 dk
  5. 5 Birleştirme Quiz sınıfını menü döngüsüyle birleştirirsin. 6 dk
9
Interface
6 ders · 30 dk
  1. 1 interface interface ile sözleşme tanımlamayı öğrenirsin. 5 dk
  2. 2 implements implements ile sözleşme uygulmayı öğrenirsin. 5 dk
  3. 3 default metot interface içinde default metodu öğrenirsin. 5 dk
  4. 4 static metot interface içinde static metodu öğrenirsin. 5 dk
  5. 5 Çoklu interface Birden çok interface uygulamayı öğrenirsin. 5 dk
  6. 6 Özet - Interface interface ve default metodu birleştirerek bir ödeme sistemi yazarsın. 5 dk
10
Abstract sınıf
6 ders · 29 dk
  1. 1 abstract sınıf abstract sınıf tanımlamayı öğrenirsin. 5 dk
  2. 2 abstract metot abstract metotları öğrenirsin. 5 dk
  3. 3 Soyut ve somut Soyut sınıfta somut metot öğrenirsin. 4 dk
  4. 4 Soyut sınıf vs interface Soyut sınıf ve interface farkını öğrenirsin. 5 dk
  5. 5 Sealed sınıf sealed sınıf ile kısıtlı mirası öğrenirsin. 5 dk
  6. 6 Özet - Abstract sınıf abstract metot ve sealed'ı birleştirerek bir geometri hiyerarşisi yazarsın. 5 dk
11
Polimorfizm
6 ders · 29 dk
  1. 1 Polimorfizm temelleri Üst sınıf referansı ile alt sınıf nesnesini öğrenirsin. 5 dk
  2. 2 Dinamik bağlama Çalışma zamanında hangi metodun çağrıldığını öğrenirsin. 5 dk
  3. 3 Geçersiz kılma kuralları @Override ve kural setini öğrenirsin. 5 dk
  4. 4 Soyut referans Soyut sınıf/interface referansıyla nesne kullanmayı öğrenirsin. 5 dk
  5. 5 Pattern matching instanceof pattern matching ile tip dönüşümünü öğrenirsin. 4 dk
  6. 6 Özet - Polimorfizm Dinamik bağlama ve pattern matching'i birleştirerek bir şekil çizici yazarsın. 5 dk
12
Proje: Blog uygulamasıProje
5 ders · 30 dk
  1. 1 Model tasarımı Post ve Comment sınıflarının iskeletini tasarlarsın. 6 dk
  2. 2 Blog sınıfı Blog sınıfıyla koleksiyon yönetimini kurarsın. 6 dk
  3. 3 Yorum ekleme addComment ile yorumsal akışı yazarsın. 6 dk
  4. 4 Arama ve filtreleme Stream ile arama ve filtreleme yazarsın. 6 dk
  5. 5 Birleştirme Blog sınıfını menü döngüsüyle birleştirirsin. 6 dk
13
Dosya işlemleri
6 ders · 30 dk
  1. 1 File sınıfı File ile dosya ve dizin öğrenirsin. 5 dk
  2. 2 FileReader ve FileWriter FileReader ve FileWriter ile metin okuyup yazmayı öğrenirsin. 5 dk
  3. 3 BufferedReader BufferedReader ile satır okumayı öğrenirsin. 5 dk
  4. 4 PrintWriter PrintWriter ile biçimli yazmayı öğrenirsin. 5 dk
  5. 5 try-with-resources try-with-resources ile otomatik kapatmayı öğrenirsin. 5 dk
  6. 6 Özet - Dosya işlemleri BufferedReader ve PrintWriter'ı birleştirerek bir not defteri yazarsın. 5 dk
14
Serileştirme
6 ders · 30 dk
  1. 1 Jackson ObjectMapper Jackson ObjectMapper ile nesneden JSON üretmeyi öğrenirsin. 5 dk
  2. 2 readValue readValue ile JSON'dan nesne oluşturmayı öğrenirsin. 5 dk
  3. 3 writeValueAsString writeValueAsString ile nesneyi JSON'a çevirmeyi öğrenirsin. 5 dk
  4. 4 JsonProperty @JsonProperty ile alan eşlemeyi öğrenirsin. 5 dk
  5. 5 Liste ve Map serileştirme List ve Map yapısını JSON'a çevirmeyi öğrenirsin. 5 dk
  6. 6 Özet - Serileştirme ObjectMapper ve @JsonProperty'yi birleştirerek bir ayar dosyası yazarsın. 5 dk
15
Generics
6 ders · 30 dk
  1. 1 Generic sınıf <T> ile generic sınıf tanımlamayı öğrenirsin. 5 dk
  2. 2 Generic metot <T> ile generic metodu öğrenirsin. 5 dk
  3. 3 Bounded type <T extends Number> ile sınırlandırılmış türü öğrenirsin. 5 dk
  4. 4 Wildcard ? extends T ve ? super T joker türlerini öğrenirsin. 5 dk
  5. 5 Type erasure Derleme sonrası tür silmeyi öğrenirsin. 5 dk
  6. 6 Özet - Generics Generic sınıf ve metodu birleştirerek bir Box<T> yazarsın. 5 dk
16
Generic koleksiyonlar
6 ders · 30 dk
  1. 1 List<E> List<E> ile generic liste öğrenirsin. 5 dk
  2. 2 Map<K,V> Map<K,V> ile generic harita öğrenirsin. 5 dk
  3. 3 Set<E> Set<E> ile generic küme öğrenirsin. 5 dk
  4. 4 Queue ve Deque Queue<E> ve Deque<E> ile kuyruk öğrenirsin. 5 dk
  5. 5 Collections sınıfı Collections.sort ve frequency yardımcılarını öğrenirsin. 5 dk
  6. 6 Özet - Generic koleksiyonlar List, Map ve Set'i birleştirerek bir kelime frekans sayacı yazarsın. 5 dk
17
Iterator
6 ders · 30 dk
  1. 1 Iterator Iterator ile koleksiyon gezmeyi öğrenirsin. 5 dk
  2. 2 remove Iterator.remove ile güvenli silmeyi öğrenirsin. 5 dk
  3. 3 ListIterator ListIterator ile çift yönlü gezinmeyi öğrenirsin. 5 dk
  4. 4 Iterable Iterable ile for-each desteğini öğrenirsin. 5 dk
  5. 5 Spliterator Spliterator ile paralel gezinmeyi öğrenirsin. 5 dk
  6. 6 Özet - Iterator Iterator ve Iterable'ı birleştirerek bir özel koleksiyon yazarsın. 5 dk
18
Lambda expressions
6 ders · 30 dk
  1. 1 Lambda temelleri () -> ... ile lambda ifadesini öğrenirsin. 5 dk
  2. 2 Parametreli lambda (x) -> ... ile parametreli lambdayı öğrenirsin. 5 dk
  3. 3 Method reference Class::method ile metot referansını öğrenirsin. 5 dk
  4. 4 forEach ile lambda forEach içinde lambda kullanmayı öğrenirsin. 5 dk
  5. 5 Comparator ile lambda Comparator.comparing ile sıralamayı öğrenirsin. 5 dk
  6. 6 Özet - Lambda expressions Lambda ve method reference'ı birleştirerek bir sıralama yardımcı yazarsın. 5 dk
19
Stream API temelleri
6 ders · 30 dk
  1. 1 stream() stream() ile koleksiyondan akış oluşturmayı öğrenirsin. 5 dk
  2. 2 filter filter ile eleman süzmeyi öğrenirsin. 5 dk
  3. 3 map map ile eleman dönüştürmeyi öğrenirsin. 5 dk
  4. 4 forEach ve count forEach ile işlem ve count ile saymayı öğrenirsin. 5 dk
  5. 5 collect toList collect(Collectors.toList()) ile liste toplamayı öğrenirsin. 5 dk
  6. 6 Özet - Stream API temelleri filter, map ve collect'i birleştirerek bir işçi filtreleyici yazarsın. 5 dk
20
Orta seviye finaliProje
5 ders · 30 dk
  1. 1 Proje tasarımı Orta seviye finali iskeletini tasarlarsın. 6 dk
  2. 2 OOP modeli Sınıf hiyerarşisi ve interface'leri kurarsın. 6 dk
  3. 3 Stream katmanı Stream ve lambda ile veri işleme kurarsın. 6 dk
  4. 4 Dosya I/O Verileri JSON olarak kaydedip yüklersin. 6 dk
  5. 5 Birleştirme Tüm katmanları birleştirerek çalışan bir uygulama yazarsın. 6 dk

Java'da ileri stream, Optional, functional interface, java.time, reflection, annotation, tasarım desenleri, JUnit, Mockito, multithreading ve concurrent API öğrenirsin.

1
Stream ileri
6 ders · 30 dk
  1. 1 collect groupingBy Collectors.groupingBy ile gruplamayı öğrenirsin. 5 dk
  2. 2 partitioningBy Collectors.partitioningBy ile ikiye bölmeyi öğrenirsin. 5 dk
  3. 3 joining Collectors.joining ile dize birleştirmeyi öğrenirsin. 5 dk
  4. 4 reduce reduce ile akümülasyonu öğrenirsin. 5 dk
  5. 5 flatMap flatMap ile iç içe akışları düzleştirmeyi öğrenirsin. 5 dk
  6. 6 Özet - Stream ileri groupingBy, reduce ve flatMap'i birleştirerek bir satış özetleyici yazarsın. 5 dk
2
Optional
6 ders · 30 dk
  1. 1 Optional.of Optional.of ile değer sarmayı öğrenirsin. 5 dk
  2. 2 ofNullable Optional.ofNullable ile null güvenliğini öğrenirsin. 5 dk
  3. 3 map ve flatMap Optional üzerinde map ve flatMap'i öğrenirsin. 5 dk
  4. 4 orElse ve orElseGet orElse ve orElseGet ile varsayılan değer öğrenirsin. 5 dk
  5. 5 ifPresent ve isPresent ifPresent ve isPresent ile kontrol öğrenirsin. 5 dk
  6. 6 Özet - Optional ofNullable, map ve orElse'yi birleştirerek bir kullanıcı bulucu yazarsın. 5 dk
3
Functional interface
6 ders · 30 dk
  1. 1 Function<T,R> Function<T,R> ile dönüşüm fonksiyonunu öğrenirsin. 5 dk
  2. 2 Predicate<T> Predicate<T> ile koşul fonksiyonunu öğrenirsin. 5 dk
  3. 3 Consumer<T> Consumer<T> ile tüketici fonksiyonunu öğrenirsin. 5 dk
  4. 4 Supplier<T> Supplier<T> ile üretici fonksiyonunu öğrenirsin. 5 dk
  5. 5 @FunctionalInterface @FunctionalInterface ile işaretleme öğrenirsin. 5 dk
  6. 6 Özet - Functional interface Function, Predicate ve Consumer'ı birleştirerek bir akış işleyici yazarsın. 5 dk
4
Date/time API
6 ders · 30 dk
  1. 1 LocalDate LocalDate ile tarih öğrenirsin. 5 dk
  2. 2 LocalTime ve LocalDateTime LocalTime ve LocalDateTime ile zaman öğrenirsin. 5 dk
  3. 3 Duration ve Period Duration ve Period ile süre farkı öğrenirsin. 5 dk
  4. 4 DateTimeFormatter DateTimeFormatter ile biçimlendirme öğrenirsin. 5 dk
  5. 5 Instant ve ZonedDateTime Instant ve ZonedDateTime ile zaman dilimi öğrenirsin. 5 dk
  6. 6 Özet - Date/time API LocalDate, Period ve DateTimeFormatter'ı birleştirerek bir yaş hesaplayıcı yazarsın. 5 dk
5
Reflection
6 ders · 30 dk
  1. 1 Class<?> Class<?> ile sınıf meta verisini öğrenirsin. 5 dk
  2. 2 getFields getFields ile alan listesini öğrenirsin. 5 dk
  3. 3 getMethods getMethods ile metot listesini öğrenirsin. 5 dk
  4. 4 invoke Method.invoke ile dinamik çağrıyı öğrenirsin. 5 dk
  5. 5 getDeclaredConstructors getDeclaredConstructors ile yapıcı listesini öğrenirsin. 5 dk
  6. 6 Özet - Reflection getMethods ve invoke'u birleştirerek bir nesne inceleyici yazarsın. 5 dk
6
Annotation
6 ders · 30 dk
  1. 1 Yerleşik annotation'lar @Override ve @Deprecated yerleşik annotation'ları öğrenirsin. 5 dk
  2. 2 @interface @interface ile özel annotation tanımlamayı öğrenirsin. 5 dk
  3. 3 Retention ve Target @Retention ve @Target meta-annotation'ları öğrenirsin. 5 dk
  4. 4 Annotation değerleri Annotation parametreleri ve varsayılan değerleri öğrenirsin. 5 dk
  5. 5 Reflection ile annotation Reflection ile annotation okumayı öğrenirsin. 5 dk
  6. 6 Özet - Annotation @interface ve @Retention'ı birleştirerek bir işaretleme framework'ü yazarsın. 5 dk
7
Tasarım desenleri
6 ders · 30 dk
  1. 1 Singleton Singleton desenini Java'da yazmayı öğrenirsin. 5 dk
  2. 2 Factory Factory desenini öğrenirsin. 5 dk
  3. 3 Strategy Strategy desenini öğrenirsin. 5 dk
  4. 4 Observer Observer desenini öğrenirsin. 5 dk
  5. 5 Decorator Decorator desenini öğrenirsin. 5 dk
  6. 6 Özet - Tasarım desenleri Singleton, Factory ve Strategy'i birleştirerek bir ödeme sistemi yazarsın. 5 dk
8
JUnit test
6 ders · 30 dk
  1. 1 JUnit temelleri @Test ile test yazmayı öğrenirsin. 5 dk
  2. 2 Assertions assertEquals ve assertTrue ile iddiaları öğrenirsin. 5 dk
  3. 3 @BeforeEach ve @AfterEach @BeforeEach ve @AfterEach ile setup öğrenirsin. 5 dk
  4. 4 @ParameterizedTest @ParameterizedTest ile parametreli testleri öğrenirsin. 5 dk
  5. 5 @DisplayName @DisplayName ile test adlandırma öğrenirsin. 5 dk
  6. 6 Özet - JUnit test @Test, assertEquals ve @ParameterizedTest'i birleştirerek bir hesap makinesi testi yazarsın. 5 dk
9
Mockito
6 ders · 30 dk
  1. 1 Mock Mockito.mock ile sahte nesneleri öğrenirsin. 5 dk
  2. 2 @Mock @Mock ile mock enjeksiyonunu öğrenirsin. 5 dk
  3. 3 when thenReturn when(...).thenReturn() ile davranış taklitlerini öğrenirsin. 5 dk
  4. 4 verify verify ile çağrı doğrulamayı öğrenirsin. 5 dk
  5. 5 ArgumentMatchers ArgumentMatchers ile esnek argümanları öğrenirsin. 5 dk
  6. 6 Özet - Mockito Mock, when ve verify'yi birleştirerek bir servis testi yazarsın. 5 dk
10
Multithreading
6 ders · 30 dk
  1. 1 Thread Thread ile iş parçacığı oluşturmayı öğrenirsin. 5 dk
  2. 2 Runnable Runnable ile görev tanımlamayı öğrenirsin. 5 dk
  3. 3 start ve join start ve join ile iş parçacığı yönetimini öğrenirsin. 5 dk
  4. 4 synchronized synchronized ile kritik bölgeyi öğrenirsin. 5 dk
  5. 5 wait ve notify wait ve notify ile iş parçacığı iletişimini öğrenirsin. 5 dk
  6. 6 Özet - Multithreading Thread, Runnable ve synchronized'ı birleştirerek bir sayaç yazarsın. 5 dk
11
Concurrent API
6 ders · 30 dk
  1. 1 ExecutorService ExecutorService ile iş parçacığı havuzunu öğrenirsin. 5 dk
  2. 2 Callable ve Future Callable ve Future ile sonuçlu görevleri öğrenirsin. 5 dk
  3. 3 CompletableFuture CompletableFuture ile asenkron zincirleri öğrenirsin. 5 dk
  4. 4 ConcurrentHashMap ConcurrentHashMap ile paralel haritayı öğrenirsin. 5 dk
  5. 5 Lock ve Condition Lock ve Condition ile esnek kilidi öğrenirsin. 5 dk
  6. 6 Özet - Concurrent API ExecutorService ve CompletableFuture'i birleştirerek paralel bir indirme yazarsın. 5 dk
12
I/O ve NIO temelleri
6 ders · 30 dk
  1. 1 Path Path ile modern yol nesnesini öğrenirsin. 5 dk
  2. 2 Files Files ile dosya işlemlerini öğrenirsin. 5 dk
  3. 3 readString ve writeString Files.readString ve writeString ile metin okuryazarlığı öğrenirsin. 5 dk
  4. 4 Buffered I/O BufferedInputStream ve BufferedOutputStream ile verimli I/O öğrenirsin. 5 dk
  5. 5 Channels FileChannel ile kanal tabanlı I/O öğrenirsin. 5 dk
  6. 6 Özet - I/O ve NIO temelleri Path, Files ve readString'i birleştirerek bir dosya tarayıcı yazarsın. 5 dk
13
İleri projeProje
5 ders · 30 dk
  1. 1 Proje tasarımı İleri proje iskeletini tasarlarsın. 6 dk
  2. 2 Stream katmanı Stream ileri ve Optional ile veri akışı kurarsın. 6 dk
  3. 3 Concurrent katmanı ExecutorService ile paralel işlemleri yazarsın. 6 dk
  4. 4 Test katmanı JUnit ve Mockito ile test yazarısn. 6 dk
  5. 5 Birleştirme Tüm katmanları birleştirerek çalışan bir mini servis yazarsın. 6 dk
14
İleri seviye finaliProje
5 ders · 30 dk
  1. 1 Proje tasarımı İleri seviye finali iskeletini tasarlarsın. 6 dk
  2. 2 Stream katmanı Stream ileri ve Optional ile veri işleme yazarsın. 6 dk
  3. 3 Concurrent katmanı ExecutorService ile paralel iş akışı yazarsın. 6 dk
  4. 4 Reflection ve annotation Reflection ve annotation ile yapılandırma yazarsın. 6 dk
  5. 5 Birleştirme Tüm ileri konuları birleştirerek çalışan bir uygulama yazarsın. 6 dk

Java'da JVM iç yapıları, bellek modeli, NIO, reactive, JNI, performans ve GC ayarı, bytecode ve mikro hizmet temelleri öğrenirsin.

1
JVM internals
6 ders · 30 dk
  1. 1 JVM mimarisi JVM'in sınıf yükleyici, çalışma zamanı ve yürütme motorunu öğrenirsin. 5 dk
  2. 2 Sınıf yükleyici Bootstrap, Platform ve Application sınıf yükleyicilerini öğrenirsin. 5 dk
  3. 3 Bytecode Bytecode ve javap ile komut incelemeyi öğrenirsin. 5 dk
  4. 4 JIT derleyici JIT derleyici ve optimizasyonu öğrenirsin. 5 dk
  5. 5 Çalışma zamanı veri alanları Stack, heap ve metaspace'i öğrenirsin. 5 dk
  6. 6 Özet - JVM internals Sınıf yükleyici, bytecode ve JIT'i birleştirerek bir JVM inceleme yazarsın. 5 dk
2
Memory model
6 ders · 30 dk
  1. 1 Heap ve stack Heap ve stack bellek bölgelerini öğrenirsin. 5 dk
  2. 2 happens-before happens-before ile hafıza sıralamasını öğrenirsin. 5 dk
  3. 3 volatile volatile ile görünür değişkeni öğrenirsin. 5 dk
  4. 4 final alanların garantisi final alanların başlatma garantisi öğrenirsin. 5 dk
  5. 5 Metaspace Metaspace ile sınıf meta verisi bölgesini öğrenirsin. 5 dk
  6. 6 Özet - Memory model happens-before ve volatile'ı birleştirerek bir yayın aracı yazarsın. 5 dk
3
NIO
6 ders · 30 dk
  1. 1 Buffer Buffer ile NIO tamponunu öğrenirsin. 5 dk
  2. 2 Channel Channel ile NIO kanalını öğrenirsin. 5 dk
  3. 3 Selector Selector ile çoklu kanal yönetimini öğrenirsin. 5 dk
  4. 4 Charset Charset ile bayt-karakter dönüşümünü öğrenirsin. 5 dk
  5. 5 Path ve Files (NIO.2) NIO.2 Path ve Files API'sini öğrenirsin. 5 dk
  6. 6 Özet - NIO Buffer, Channel ve Selector'ü birleştirerek bir echo sunucusu yazarsın. 5 dk
4
Reactive
6 ders · 30 dk
  1. 1 Flow API Java 9 Flow API ile reaktif akışı öğrenirsin. 5 dk
  2. 2 Publisher ve Subscriber Publisher ve Subscriber rollerini öğrenirsin. 5 dk
  3. 3 SubmissionPublisher SubmissionPublisher ile veri yayını öğrenirsin. 5 dk
  4. 4 Backpressure Backpressure ile akış denetimini öğrenirsin. 5 dk
  5. 5 Project Reactor Mono Project Reactor Mono ile tek değerli reaktif akışı öğrenirsin. 5 dk
  6. 6 Özet - Reactive Flow API ve SubmissionPublisher'ı birleştirerek bir sıcaklık izleyici yazarsın. 5 dk
5
JNI
6 ders · 30 dk
  1. 1 native metot native anahtar kelimesi ile yerel metot tanımını öğrenirsin. 5 dk
  2. 2 javah ve başlık javac -h ile başlık üretmeyi öğrenirsin. 5 dk
  3. 3 JNIEnv JNIEnv ile yerel çağrı ortamını öğrenirsin. 5 dk
  4. 4 C/C++ ile uygulama C/C++ ile JNI uygulamasını öğrenirsin. 5 dk
  5. 5 Foreign Function & Memory API Java 21 FFM API ile modern yerel çağrıyı öğrenirsin. 5 dk
  6. 6 Özet - JNI native ve JNIEnv'i birleştirerek bir matematik yerel bağlaması yazarsın. 5 dk
6
Performans ve GC
6 ders · 30 dk
  1. 1 JMH JMH ile benchmark ölçmeyi öğrenirsin. 5 dk
  2. 2 JFR ve jcmd Java Flight Recorder ve jcmd ile profil çıkarmayı öğrenirsin. 5 dk
  3. 3 GC ayarı G1 ve ZGC çöp toplayıcı ayarlarını öğrenirsin. 5 dk
  4. 4 Heap dump jmap ve heap dump ile bellek analizi öğrenirsin. 5 dk
  5. 5 JIT ayarı JIT bayrakları ve tiered compilation ayarını öğrenirsin. 5 dk
  6. 6 Özet - Performans ve GC JMH, JFR ve GC ayarını birleştirerek optimize edilmiş bir işleyici yazarsın. 5 dk
7
Bytecode (ASM)Proje
5 ders · 30 dk
  1. 1 Proje tasarımı Bytecode analiz projesinin iskeletini tasarlarsın. 6 dk
  2. 2 ClassReader ASM ClassReader ile sınıf okumayı yazarsın. 6 dk
  3. 3 ClassVisitor ClassVisitor ile metod ve alan tarama yazarsın. 6 dk
  4. 4 Bytecode dönüştürme ASM ile bytecode dönüştürme yazarsın. 6 dk
  5. 5 Birleştirme Tüm parçaları birleştirerek bir bytecode denetleyici yazarsın. 6 dk
8
Uzman finaliProje
5 ders · 30 dk
  1. 1 Proje tasarımı Uzman finali iskeletini tasarlarsın. 6 dk
  2. 2 Reactive katmanı Flow API ile reaktif akış yazarsın. 6 dk
  3. 3 Performans katmanı JMH ve GC ayarı ile performans ölçümü yazarsın. 6 dk
  4. 4 Mikro hizmet temeli HTTP tabanlı küçük bir mikro hizmet iskeletini yazarsın. 6 dk
  5. 5 Birleştirme Tüm uzman konularını birleştirerek çalışan bir uygulama yazarsın. 6 dk

Dersler ücretsiz, hesap ilerlemeni korur

Hesap açmak zorunlu değil. Açarsan kaldığın yerden devam eder, emeğini kaybetmezsin.

  • İlerlemen her cihazda kayıtlı
  • XP ve rozet kazan
  • Günlük seriyi koru
  • Kursu bitirince sertifika al
ücretsiz hesap aç

Sık sorulan sorular

Java dersleri ücretsiz mi?

Evet. Java kursundaki 360 dersin tamamı ücretsiz ve hesap açmadan başlayabilirsin.

Başlamak için ön bilgi gerekiyor mu?

Hayır. Başlangıç seviyesi sıfırdan anlatır; yalnızca bir tarayıcı yeterli. Konuyu biliyorsan üst seviyelerden başlayabilirsin.

Kursu bitirmek ne kadar sürer?

Dersler 2–8 dakikalık. Tüm kurs yaklaşık 30 saat; günde 15–20 dakikayla birkaç ayda bitirebilirsin.

Sertifika veriliyor mu?

Evet. Ücretsiz hesapla kursu tamamladığında adına doğrulanabilir bir sertifika oluşturulur.

Hesap açmadan ilerlemem kaybolur mu?

Hesapsız ilerlemen yalnızca kullandığın tarayıcıda tutulur. Ücretsiz hesap açtığında bu ilerleme hesabına aktarılır.

Sonraki adım PHP

Modern PHP 8.3 ile değişkenlerden OOP, PDO ve uzman seviye konulara kadar tüm temelleri öğrenin.