Menu
Coddy logo textTech

Yapıcı Metot

Coddy'nin Java Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası — ders 7 / 87.

Bir constructor, new ile bir nesne oluşturduğunuzda otomatik olarak çalışan özel bir metottur. Sınıf ile aynı ada sahiptir ve dönüş türü yoktur.

Temel yapıcı

public class Book {
    private String title;
    private String author;
    
    public Book(String title, String author) {
        this.title = title;
        this.author = author;
    }
}

Varsayılan yapıcı (parametresiz)

public class Book {
    private String title;
    
    public Book() {
        this.title = "Unknown";
    }
}

Yapıcı (constructor), nesnenin durumunu başlatır

Book book = new Book("1984", "Orwell");
// Yapıcı hemen çalışır, alanlar ayarlanır

Eğer bir constructor yazmazsanız, Java varsayılan olarak boş bir tane sağlar. Herhangi bir constructor yazdığınızda, varsayılan olan artık otomatik olarak sağlanmaz.

challenge icon

Görev

Orta

Tüm alanları başlatan bir yapıcı metoda (constructor) sahip bir Book sınıfı oluşturun:

  • Özel (private) alanlar: title, author (String), pages (int)
  • Her üç değeri de alan ve this kullanarak atayan bir yapıcı metot
  • Her alan için getter metotları
  • "<title> by <author> (<pages> pages)" değerini döndüren bir getSummary() metodu

Kopya kağıdı

Bir yapıcı (constructor), new ile bir nesne oluşturduğunuzda otomatik olarak çalışan özel bir metottur. Sınıf ile aynı isme sahiptir ve dönüş tipi yoktur.

Temel yapıcı (constructor):

public class Book {
    private String title;
    private String author;
    
    public Book(String title, String author) {
        this.title = title;
        this.author = author;
    }
}

Varsayılan yapıcı (parametresiz):

public class Book {
    private String title;
    
    public Book() {
        this.title = "Unknown";
    }
}

Bir nesne oluşturmak için yapıcı kullanma:

Book book = new Book("1984", "Orwell");
// Yapıcı hemen çalışır, alanlar atanır

Eğer bir yapıcı yazmazsanız, Java varsayılan olarak boş bir yapıcı sağlar. Herhangi bir yapıcı yazdığınızda, varsayılan olan artık otomatik olarak sağlanmaz.

Kendin dene

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String title = scanner.nextLine();
        String author = scanner.nextLine();
        int pages = Integer.parseInt(scanner.nextLine());
        
        Book book = new Book(title, author, pages);
        
        System.out.println("Title: " + book.getTitle());
        System.out.println("Author: " + book.getAuthor());
        System.out.println("Pages: " + book.getPages());
        System.out.println(book.getSummary());
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Nesne Yönelimli Programlama bölümündeki tüm dersler