Dersin öğretmen rehberi
Bu ders Java programını sıfırdan okur. Önce Merhaba classını, sonra main girişini, ardından System.out.println satırını ve iki kapanış parantezini tek tek inceleyeceğiz.
Bu dersin hedefleri- class satırının programı nasıl grupladığını açıklamak.
- main methodunun neden başlangıç noktası olduğunu anlamak.
- System.out.println parçalarını ayırıp çıktıyı değiştirmek.
Java backend temelleri
beginner 25 dk çalışma
Bu dersin ana sorusu: public, class, main, String[], System.out.println, parantez ve süslü parantezleri hiç bilmeyen birinin satır satır anlayabilmesi.
Öğrenme özeti: Java programı main methodundan başlar ve System.out.println ile Merhaba Dünya yazısını terminalde gösterir.
Öğrenme rotası ve transfer görevi
- Sınıfı bul: class ve Merhaba adının programı nasıl çevrelediğini okuyun.
- Başlangıcı bul: main imzasındaki parçaları ayırıp programın neden buradan başladığını anlayın.
- Çıktıyı tahmin et: println içindeki metni ve terminalde oluşacak satırı önceden yazın.
Kendin dene: Tırnak içindeki Java metnini değiştirin veya ikinci println ekleyin; beklenen satır sayısını önce tahmin edin.
Kavram sözlüğü ve sık karıştırılanlar
- class: Java kodlarını bir yapı içinde toplayan sınıf bloğudur.
- main: Java programı çalışmaya başladığında girilen methoddur.
- String[] args: Program başlarken dışarıdan gelebilecek metin değerlerini temsil eden parametredir.
- println: Verilen metni terminale yazıp yeni satıra geçen methoddur.
Sık karıştırılanlar: class ekrana yazı yazmaz; kodun yapısını oluşturur. main adı görünen metin değildir; çalışma başlangıcının adıdır.
Nasıl çalışacağız: Her satırı soldan sağa okuyun. Önce kelime, isim, sayı, tırnak ve noktalama işaretlerini ayırın; sonra satırın ne yaptığını, önceki satırdan ne aldığını ve sonraki satıra ne bıraktığını söyleyin.
Hata ayıklama: Hata mesajındaki satırı bulun. Tırnak, parantez, noktalı virgül, büyük-küçük harf ve girinti gibi küçük işaretleri tek tek karşılaştırın.
Test yaklaşımı: Önce programı değiştirmeden çalıştırın. Sonra yalnızca bir metni veya sayıyı değiştirin, çalıştırmadan önce çıktıyı tahmin edin ve gerçek sonuçla karşılaştırın.
Güvenlik: Bu ilk örnekte sabit veri kullanılıyor. Kullanıcıdan veri almaya başladığınızda, gelen değeri kontrol etmeden doğru veya güvenli kabul etmeyin.
Sürdürülebilirlik: Kodu küçük ve anlaşılır tutun; her satıra tek görev verin, blokları düzgün kapatın ve isimleri görevini anlatacak şekilde seçin.
Ders özeti: class kodu gruplar; main başlangıçtır; String[] args dışarıdan gelebilecek metin listesidir; System.out.println terminale yazar ve yeni satıra geçer.
1
public
class
Merhaba
{
class (Sınıf tanımı)
— public dışarıdan erişilebilirliği; class bir sınıf tanımladığımızı; Merhaba sınıfın adını; { ise sınıf bloğunun başlangıcını gösterir.
Öğretmen açıklaması
Bu adımı hiç bilmeyen biri için okuyalım: Merhaba adında bir class oluşturur ve main methodunu içine koyacağımız alanı açar. Satırın rolü: Java sınıfını başlatan satır. Sözdizimi açısından public dışarıdan erişilebilirliği; class bir sınıf tanımladığımızı; Merhaba sınıfın adını; { ise sınıf bloğunun başlangıcını gösterir. Çalışma sırasında Java derleyicisi { ile } arasındaki kodu Merhaba sınıfının üyesi olarak görür. Gözlenebilir ara sonuç şudur: Tek başına terminal çıktısı üretmez; kodun yapısını kurar. Kısaca: bu satır programın yapısını kurar veya terminalde göreceğimiz yazıyı üretir; şimdi bir sonraki satıra geçip bu görevin nasıl tamamlandığını izleyin.
- Satırı soldan sağa okuyun ve her kelimeyi, ismi, parantezi ve noktalama işaretini ayrı ayrı adlandırın.
- Bu parçaların birlikte hangi işi yaptığını ve hangi bloğun içinde bulunduğunu kendi cümlenizle söyleyin.
- Satırı silersek derleyicide veya terminalde ne değişeceğini önce tahmin edin, sonra çalıştırarak kontrol edin.
- Metni ya da tek bir kod parçasını değiştirin; yeni terminal çıktısını çalıştırmadan önce tahmin edip sonucu karşılaştırın.
Yaygın hata: public class satırını çalıştırılan bir komut sanmak. Bu satır çıktı değil, kodun dış çerçevesidir.
Şimdi sen dene: Sınıf adını değiştirip Java dosya adıyla ilişkilendirin; terminal çıktısının neden aynı kaldığını açıklayın.
Zihinsel model ve benzetme
Zihninde canlandır: Bir tipin şeması açıldı; içindeki üyeler bu tipe ait olacak.
Günlük hayattan: class, bir tipin kimlik kartıdır: üzerinde neler yapabileceği yazar.
İşaretlerin anlamı
class
Yeni bir tip (sınıf) tanımlar.
public
Erişim düzeyi: her yerden görülebilir.
{
Sınıf/method bloğunu açar.
İleride bağlanacak
`Merhaba` ismini not et: 3. satırda tekrar karşımıza çıkacak.
Bu satırı hiç bilmeyen biri için parçalayalım
Satırın görevi: Java sınıfını başlatan satır
Kavram: Merhaba class bloğu
public class Merhaba { ifadesini “Merhaba adında erişilebilir bir kod kutusu aç” diye okuyun.
Blok kapsamı: Bu satır dıştaki class bloğunu açar; en son kapanış } bu bloğu kapatır.
Neden şimdi: main methodunun ait olacağı sınıfı önce oluşturmak gerekir.
Kod etiketlerini tek tek incele
public
erişim bildirimi
Ne yapar? Sınıfa dışarıdan erişilebilmesini belirtir.
Neden burada? Java çalışma düzeninde sınıfın görünür olmasını sağlar.
Silinirse: Bu örnekte erişim davranışı değişebilir.
class
sınıf anahtar kelimesi
Ne yapar? Bir sınıf tanımlar.
Neden burada? main methodunu taşıyacak yapıyı açar.
Silinirse: Sınıf gövdesi oluşmaz.
Merhaba
sınıf adı
Ne yapar? Sınıfa isim verir.
Neden burada? Java dosyasındaki yapıyı ayırt eder.
Silinirse: Sınıf tanımı eksik kalır.
{
açılış parantezi
Ne yapar? Sınıf kapsamını başlatır.
Neden burada? İçindeki mainin sınıfa ait olduğunu gösterir.
Silinirse: Kod sınıf dışında kalır.
Amaç
Merhaba adında bir class oluşturur ve main methodunu içine koyacağımız alanı açar.
Nasıl Çalışır
Java derleyicisi { ile } arasındaki kodu Merhaba sınıfının üyesi olarak görür.
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
"type": "ClassDeclaration",
"modifiers": [
"public"
],
"name": "Merhaba"
}
Değişiklikler (Diff)
+ Eklendi:
+ public class Merhaba {
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: class_name_mismatch
public sınıf adı dosya adıyla birebir aynı olmalı: Merhaba sınıfı Merhaba.java dosyasında olmalı.
Yaygın Hata
class bloğunun kapanış parantezini unutmak.
Ek Açıklama
Java'da her şey bir sınıf içinde yaşar. public class ile programımızın ana sınıfını tanımlıyoruz. Sınıf adı dosya adıyla aynı olmalıdır.
2
public
static
void
main
(
String[]
args
) {
main() metodu (Giriş noktası)
— public erişilebilirliği; static nesnesiz çağrılmayı; void geri değer dönmemeyi; main başlangıç adını; String[] args dışarıdan gelebilecek metin listesini; { method bloğunun başlangıcını gösterir.
Öğretmen açıklaması
Bu adımı hiç bilmeyen biri için okuyalım: Java programı çalıştığında ilk girilecek methodu tanımlar. Satırın rolü: Java programının başlangıç noktası. Sözdizimi açısından public erişilebilirliği; static nesnesiz çağrılmayı; void geri değer dönmemeyi; main başlangıç adını; String[] args dışarıdan gelebilecek metin listesini; { method bloğunun başlangıcını gösterir. Çalışma sırasında JVM programı başlatırken main methodunu bulur ve { ile } arasındaki satırları sırayla çalıştırır. Gözlenebilir ara sonuç şudur: Tek başına yazı göstermez; içindeki println çağrısının çalışacağı alanı açar. Kısaca: bu satır programın yapısını kurar veya terminalde göreceğimiz yazıyı üretir; şimdi bir sonraki satıra geçip bu görevin nasıl tamamlandığını izleyin.
- Satırı soldan sağa okuyun ve her kelimeyi, ismi, parantezi ve noktalama işaretini ayrı ayrı adlandırın.
- Bu parçaların birlikte hangi işi yaptığını ve hangi bloğun içinde bulunduğunu kendi cümlenizle söyleyin.
- Satırı silersek derleyicide veya terminalde ne değişeceğini önce tahmin edin, sonra çalıştırarak kontrol edin.
- Metni ya da tek bir kod parçasını değiştirin; yeni terminal çıktısını çalıştırmadan önce tahmin edip sonucu karşılaştırın.
Yaygın hata: main satırını ekrana yazan komut sanmak. main başlangıçtır; görünen yazıyı println üretir.
Şimdi sen dene: main içindeki println satırını kaldırıp programın başladığı halde neden yazı göstermediğini gözlemleyin.
Zihinsel model ve benzetme
Zihninde canlandır: Programın giriş noktası: çalıştırma buradan başlar.
Günlük hayattan: main, binanın giriş kapısıdır: her ziyaret akışı buradan başlar.
İşaretlerin anlamı
public
Erişim düzeyi: her yerden görülebilir.
static
Üyeyi örnek olmadan, tip üzerinden erişilebilir yapar.
void
Methodun değer döndürmediğini söyler.
String
Metin türü; ilk harfi büyük olmak zorundadır.
{
Sınıf/method bloğunu açar.
Başka nasıl çözülürdü?
Çok birleştirme varsa StringBuilder, değişmez metin için String yeterlidir.
Sık yapılan hata
main imzası eksik/yarımlı yazılır (static ya da String[] args unutulur) Belirti: Error: Main method not found in class — program başlamaz.
Neden: Çalıştırıcı, tam imzayı arar: public static void main(String[] args).
Çözüm: main imzasını şablonla/otomatik üretimle ekle.
Bu satırı hiç bilmeyen biri için parçalayalım
Satırın görevi: Java programının başlangıç noktası
Kavram: Java main giriş methodu
public static void main(String[] args) { ifadesini “Java programının giriş kapısını aç” diye okuyun.
Blok kapsamı: Bu satır içteki main bloğunu açar. İlk kapanış } bu methodu, son kapanış } classı kapatır.
Neden şimdi: Java çalışma zamanına nereden başlayacağını söylemek için classın içinde, çıktı satırından önce bulunur.
Kod etiketlerini tek tek incele
public
erişim bildirimi
Ne yapar? Methodun erişilebilir olduğunu belirtir.
Neden burada? JVMnin methodu bulabilmesini sağlar.
Silinirse: Giriş imzası beklenen biçimden uzaklaşabilir.
static
static bildirimi
Ne yapar? Methodu nesne oluşturmadan çağrılabilir yapar.
Neden burada? Program başlarken henüz nesne oluşturmadan giriş gerekir.
Silinirse: Standart main imzası değişir.
void
geri dönüş tipi
Ne yapar? Methodun değer döndürmediğini söyler.
Neden burada? Bu main örneği yalnızca komut çalıştırır.
Silinirse: Method imzası bozulur.
main(String[] args)
giriş methodu
Ne yapar? Programın başlangıç methodunu tanımlar.
Neden burada? JVM bu adı arar.
Silinirse: Programın başlangıcı bulunamayabilir.
{
açılış parantezi
Ne yapar? Main kapsamını başlatır.
Neden burada? println satırını mainin içine alır.
Silinirse: Komut method dışında kalır.
Amaç
Java programı çalıştığında ilk girilecek methodu tanımlar.
Nasıl Çalışır
JVM programı başlatırken main methodunu bulur ve { ile } arasındaki satırları sırayla çalıştırır.
Bellek Durumu (Variables)
| Değişken |
Tip |
Değer |
Adres |
Ref |
| args |
String[] |
[] |
— |
1 |
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
"type": "MethodDeclaration",
"modifiers": [
"public",
"static"
],
"returnType": "void",
"name": "main",
"params": [
{
"type": "String[]",
"name": "args"
}
]
}
Değişiklikler (Diff)
+ Eklendi:
+ public static void main(String[] args) {
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: wrong_main_signature
JVM tam olarak 'public static void main(String[] args)' imzasını arar. Bir kelime bile yanlışsa 'main method not found' hatası alırsınız.
Yaygın Hata
main imzasındaki parantezleri veya String[] args bölümünü bozmak.
Ek Açıklama
main metodu programın giriş noktasıdır. JVM bu tam imzayı arar ve programı buradan başlatır. static olması nesne oluşturmadan çağrılabilmesini sağlar.
3
System
.
out
.
println
(
"Merhaba Dünya!"
);
System.out.println() (Satır yazdırma)
— System standart sınıflara erişim yoludur; out standart çıktı alanıdır; println metni yazıp yeni satıra geçer; parantez içi yazdırılacak değerdir; ; satırı bitirir.
Öğretmen açıklaması
Bu adımı hiç bilmeyen biri için okuyalım: Tırnak içindeki Merhaba Dünya metnini terminalde gösterir. Satırın rolü: Metni terminale yazan Java satırı. Sözdizimi açısından System standart sınıflara erişim yoludur; out standart çıktı alanıdır; println metni yazıp yeni satıra geçer; parantez içi yazdırılacak değerdir; ; satırı bitirir. Çalışma sırasında JVM main çalışırken System.out.println methodunu çağırır ve verilen metni standart çıktıya gönderir. Gözlenebilir ara sonuç şudur: Terminalde Merhaba Dünya! görünür ve imleç yeni satıra geçer. Kısaca: bu satır programın yapısını kurar veya terminalde göreceğimiz yazıyı üretir; şimdi bir sonraki satıra geçip bu görevin nasıl tamamlandığını izleyin.
- Satırı soldan sağa okuyun ve her kelimeyi, ismi, parantezi ve noktalama işaretini ayrı ayrı adlandırın.
- Bu parçaların birlikte hangi işi yaptığını ve hangi bloğun içinde bulunduğunu kendi cümlenizle söyleyin.
- Satırı silersek derleyicide veya terminalde ne değişeceğini önce tahmin edin, sonra çalıştırarak kontrol edin.
- Metni ya da tek bir kod parçasını değiştirin; yeni terminal çıktısını çalıştırmadan önce tahmin edip sonucu karşılaştırın.
Yaygın hata: System.out, println ve metni tek parça sanmak. Bunlar sırasıyla çıktı alanı, yapılan iş ve verilen değerdir.
Şimdi sen dene: Tırnak içindeki mesajı değiştirip terminalde yeni çıktıyı kontrol edin.
Zihinsel model ve benzetme
Zihninde canlandır: Bu satırın sonucu terminalde görünür hale geliyor.
Günlük hayattan: println, ankesörlü telefondan konuşmaktır: sesin terminale gider.
İşaretlerin anlamı
;
İfadenin bittiğini bildirir.
Başka nasıl çözülürdü?
Gerçek projelerde logger (SLF4J/Log4j) kullanılır; System.out yalnızca hızlı denemeler içindir.
Sık yapılan hata
Noktalı virgül ya da süslü parantez unutulur Belirti: ';' expected — derleme durur, dosya çalışmaz.
Neden: Java her ifadeyi ; ile, her bloğu {} ile kapatır.
Çözüm: Editörün kırmızı çizgisini takip et; blok kapanışlarını girintiyle hizala.
println yerine print yazılır ya da büyük/küçük harf kayar (system.out) Belirti: cannot find symbol — derleme hatası.
Neden: Java büyük/küçük harfe duyarlıdır; System ve println birebir yazılmalı.
Çözüm: Otomatik tamamlama ile yaz; adı harf harf kontrol et.
Bu satırı hiç bilmeyen biri için parçalayalım
Satırın görevi: Metni terminale yazan Java satırı
Kavram: System.out.println çıktı çağrısı
System.out.println("Merhaba Dünya!"); ifadesini “standart çıktıya bu metni yaz ve alt satıra geç” diye okuyun.
Blok kapsamı: Bu satır main bloğunun içindedir; main çalıştığında yürütülür.
Neden şimdi: Programın çalıştığını gözle görülür biçimde kanıtlamak için main bloğunun içine konmuştur.
Kod etiketlerini tek tek incele
System.out
standart çıktı alanı
Ne yapar? Terminal çıkışına erişir.
Neden burada? Metni program dışına göstermek için gerekir.
Silinirse: println methoduna erişilemez.
println
çıktı methodu
Ne yapar? Verilen metni yazıp yeni satıra geçer.
Neden burada? Merhaba Dünya çıktısını üretir.
Silinirse: Terminalde yazı görünmez.
"Merhaba Dünya!"
metin değeri
Ne yapar? Terminale yazılacak karakterleri taşır.
Neden burada? Kullanıcıya görünen mesajdır.
Silinirse: Methoda yazdırılacak değer kalmaz.
;
komut sonu
Ne yapar? Java satırını tamamlar.
Neden burada? Statement sınırını gösterir.
Silinirse: Derleme hatası çıkabilir.
Amaç
Tırnak içindeki Merhaba Dünya metnini terminalde gösterir.
Nasıl Çalışır
JVM main çalışırken System.out.println methodunu çağırır ve verilen metni standart çıktıya gönderir.
Operatörler & Semboller
.
Üye erişim operatörü
Nesne veya sınıfın üyesine erişir
Bellek Durumu (Variables)
| Değişken |
Tip |
Değer |
Adres |
Ref |
| args |
String[] |
[] |
— |
1 |
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
"type": "MethodCall",
"object": "System.out",
"method": "println",
"args": [
{
"type": "String",
"value": "Merhaba Dünya!"
}
]
}
Değişiklikler (Diff)
+ Eklendi:
+ System.out.println("Merhaba Dünya!");
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: print_vs_println
print() alt satıra geçmez, println() geçer. 'ln' = line (satır).
Tetikleyici: missing_semicolon
Java'da her ifade noktalı virgülle biter.
Yaygın Hata
Tırnakları, parantezi veya noktalı virgülü eksik bırakmak.
Ek Açıklama
System.out.println ile ekrana yazı yazdırıyoruz. System sınıfının out nesnesinin println metodunu çağırıyoruz. ln eki yazıdan sonra alt satıra geçilmesini sağlar.
4
}
} (main metodu kapanışı)
— } açılan bloğu kapatan süslü parantezdir; bir method veya çıktı komutu değildir.
Öğretmen açıklaması
Bu adımı hiç bilmeyen biri için okuyalım: Daha önce açılmış olan main methodunu kod bloğunun bittiğini bildirir. Satırın rolü: main methodunu kapatan satır. Sözdizimi açısından } açılan bloğu kapatan süslü parantezdir; bir method veya çıktı komutu değildir. Çalışma sırasında Derleyici en yakın açık bloğu kapatır. Girinti ve açılış parantezlerinin sırası hangi bloğun kapandığını gösterir. Gözlenebilir ara sonuç şudur: Tek başına çıktı üretmez; kodun kapsamını tamamlar. Kısaca: bu satır programın yapısını kurar veya terminalde göreceğimiz yazıyı üretir; şimdi bir sonraki satıra geçip bu görevin nasıl tamamlandığını izleyin.
- Satırı soldan sağa okuyun ve her kelimeyi, ismi, parantezi ve noktalama işaretini ayrı ayrı adlandırın.
- Bu parçaların birlikte hangi işi yaptığını ve hangi bloğun içinde bulunduğunu kendi cümlenizle söyleyin.
- Satırı silersek derleyicide veya terminalde ne değişeceğini önce tahmin edin, sonra çalıştırarak kontrol edin.
- Metni ya da tek bir kod parçasını değiştirin; yeni terminal çıktısını çalıştırmadan önce tahmin edip sonucu karşılaştırın.
Yaygın hata: İki kapanış parantezinin aynı bloğu kapattığını sanmak.
Şimdi sen dene: Bir kapanış parantezini silip hatanın hangi bloğun açık kaldığını söylediğini inceleyin.
Bu satırı hiç bilmeyen biri için parçalayalım
Satırın görevi: main methodunu kapatan satır
Kavram: Java kapanış süslü parantezi
Bu satırı “açtığım kod kutusunu kapat” diye okuyun.
Blok kapsamı: Bu parantez en yakın açık bloğu kapatır; ilk } maini, son } classı kapatır.
Neden şimdi: İçteki main ve dıştaki class ayrı ayrı kapatılmalıdır.
Kod etiketlerini tek tek incele
}
kapanış parantezi
Ne yapar? Açık bloğun kapsamını bitirir.
Neden burada? main veya class kodunun sınırını kapatır.
Silinirse: Blok açık kalır ve derleme hatası oluşur.
Amaç
Daha önce açılmış olan main methodunu kod bloğunun bittiğini bildirir.
Nasıl Çalışır
Derleyici en yakın açık bloğu kapatır. Girinti ve açılış parantezlerinin sırası hangi bloğun kapandığını gösterir.
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
"type": "BlockEnd",
"scope": "method"
}
Değişiklikler (Diff)
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: unbalanced_braces
Her açılan { için bir kapanan } olmalı. Java'da parantez dengesi zorunludur.
Yaygın Hata
Parantezleri yanlış sırada kapatmak.
Ek Açıklama
Bu kapanış parantezi main metodunun gövdesini kapatıyor.
5
}
} (Sınıf kapanışı)
— } açılan bloğu kapatan süslü parantezdir; bir method veya çıktı komutu değildir.
Öğretmen açıklaması
Bu adımı hiç bilmeyen biri için okuyalım: Daha önce açılmış olan Merhaba classını kod bloğunun bittiğini bildirir. Satırın rolü: Merhaba classını kapatan satır. Sözdizimi açısından } açılan bloğu kapatan süslü parantezdir; bir method veya çıktı komutu değildir. Çalışma sırasında Derleyici en yakın açık bloğu kapatır. Girinti ve açılış parantezlerinin sırası hangi bloğun kapandığını gösterir. Gözlenebilir ara sonuç şudur: Tek başına çıktı üretmez; kodun kapsamını tamamlar. Kısaca: bu satır programın yapısını kurar veya terminalde göreceğimiz yazıyı üretir; şimdi bir sonraki satıra geçip bu görevin nasıl tamamlandığını izleyin.
- Satırı soldan sağa okuyun ve her kelimeyi, ismi, parantezi ve noktalama işaretini ayrı ayrı adlandırın.
- Bu parçaların birlikte hangi işi yaptığını ve hangi bloğun içinde bulunduğunu kendi cümlenizle söyleyin.
- Satırı silersek derleyicide veya terminalde ne değişeceğini önce tahmin edin, sonra çalıştırarak kontrol edin.
- Metni ya da tek bir kod parçasını değiştirin; yeni terminal çıktısını çalıştırmadan önce tahmin edip sonucu karşılaştırın.
Yaygın hata: İki kapanış parantezinin aynı bloğu kapattığını sanmak.
Şimdi sen dene: Bir kapanış parantezini silip hatanın hangi bloğun açık kaldığını söylediğini inceleyin.
Bu satırı hiç bilmeyen biri için parçalayalım
Satırın görevi: Merhaba classını kapatan satır
Kavram: Java kapanış süslü parantezi
Bu satırı “açtığım kod kutusunu kapat” diye okuyun.
Blok kapsamı: Bu parantez en yakın açık bloğu kapatır; ilk } maini, son } classı kapatır.
Neden şimdi: İçteki main ve dıştaki class ayrı ayrı kapatılmalıdır.
Kod etiketlerini tek tek incele
}
kapanış parantezi
Ne yapar? Açık bloğun kapsamını bitirir.
Neden burada? main veya class kodunun sınırını kapatır.
Silinirse: Blok açık kalır ve derleme hatası oluşur.
Amaç
Daha önce açılmış olan Merhaba classını kod bloğunun bittiğini bildirir.
Nasıl Çalışır
Derleyici en yakın açık bloğu kapatır. Girinti ve açılış parantezlerinin sırası hangi bloğun kapandığını gösterir.
Akış Şeması (Flowchart)
AST (Abstract Syntax Tree)
{
"type": "BlockEnd",
"scope": "class"
}
Değişiklikler (Diff)
Akıllı İpuçları (Adaptive Hints)
Tetikleyici: missing_class_brace
Sınıfı kapatan son } eksikse 'reached end of file while parsing' hatası alırsınız.
Yaygın Hata
Parantezleri yanlış sırada kapatmak.
Ek Açıklama
Son parantez sınıfımızı kapatıyor ve programımız tamamlanıyor.