Model tasarımı
- Java kursu
- Orta seviye
- Ders 65/116
- 6 dk
Post ve Comment sınıflarının iskeletini tasarlarsın.
Proje: Blog uygulaması
Bu beş derslik projede bir blog uygulaması yapacaksın. Her derste bir parça ekleyecek, son derste çalışan bir mini komut satırı uygulamasını tamamlayacaksın.
Önceki gruplardaki sınıf (class), miras (inheritance) ve List kavramlarını kullanacaksın. İlk olarak bir Post sınıfı tasarlayacaksın: title ve author alanları tutan basit bir yapı. Yanına Comment sınıfını ekleyip yazılara yorum bağlayacaksın.
Comment sınıfı
Her blog yazısına yorum eklenebilmeli. Comment sınıfı da Post gibi basit bir veri taşıyıcıdır: author ve text alanları tutar. İki sınıf da POJO (Plain Old Java Object) biçiminde yazılır; alanlar package-private, yapıcı ile doldurulur.
Bu aşamada Comment'i Post'tan ayrı tutuyoruz; sonraki derste bir List<Comment> ile yazıya bağlayacağız. Şimdilik iki sınıfı yan yana tanımlamak yeterli.
Uygulama Post ve Comment sınıflarını tanımla
class Post tanımla; String title ve String author alanları ile bu alanları atayan Post(String title, String author) yapıcısı olsun. Aynı biçimde class Comment tanımla; String author ve String text alanları ile Comment(String author, String text) yapıcısı olsun. main içinde Post p = new Post("İlk yazı", "Ayşe"); ile bir yazı oluştur ve System.out.println(p.title); ile başlığı yazdır.
Başlangıç kodu
// Post sınıfını tanımla: title, author alanları ve yapıcısı
// Comment sınıfını tanımla: author, text alanları ve yapıcısı
// main: bir Post örneği oluştur ve başlığını yazdırÖrnek çözüm
class Post {
String title;
String author;
Post(String title, String author) {
this.title = title;
this.author = author;
}
}
class Comment {
String author;
String text;
Comment(String author, String text) {
this.author = author;
this.text = text;
}
}
public class Main {
public static void main(String[] args) {
Post p = new Post("İlk yazı", "Ayşe");
System.out.println(p.title);
}
}Beklenen çıktı
İlk yazı
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Post sınıfının görevi nedir?
- Kullanıcı girişini okumak
- Yorumları silmek
- Yazı verilerini tutmak Doğru cevap
- Dosyaya yazmak
Açıklama: Post, bir blog yazısının title ve author gibi verilerini tutar.
2 Yapıcıyı tamamla
class Post {
String title;
String author;
Post(String title, String author) {
this.title = title;
this.____ = author;
}
}
class Post {
String title;
String author;
Post(String title, String author) {
this.title = title;
this.author = author;
}
}
Açıklama: this.author ataması parametreyi alana kopyalar.
3 Blog projesi kavramlarını eşleştir
| Kavram | Anlamı |
|---|---|
Post |
Yazı verisini tutar |
Comment |
Yorum verisini tutar |
title |
Yazı başlığı |
author |
Yazı ya da yorum yazarı |