Menu
Coddy logo textTech

Özet - Banka Hesabı Yöneticisi

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

challenge icon

Görev

Kolay

Öğrendiğin kapsülleme, erişim belirleyicileri, getter'lar, setter'lar ve BankAccount anahtar sözcüğüyle ilgili her şeyi bir araya getiren eksiksiz bir final sistemi oluşturalım.

Kodunu düzenlemek için iki dosya oluşturacaksın:

  • BankAccount.java: Hassas finansal verileri koruyan güvenli bir banka hesabı sınıfı tasarla:
    • Hesap oluşturulduktan sonra asla değiştirilemeyen, değişmez bir hesap numarası
    • 0.0 ile başlayan ve yalnızca denetimli metotlar aracılığıyla değiştirilebilen private bir bakiye
    • Alınabilen ancak doğrudan değiştirilemeyen private bir hesap sahibi adı
    • Hesap numarasını ve hesap sahibi adını alan bir kurucu
    • Hesap numarası için bir getter
    • Hesap sahibi adı için bir getter
    • Bakiye için bir getter
    • Yalnızca miktar pozitifse bakiyeye ekleme yapan ve başarılı işlem için deposit(double amount), reddedilirse true döndüren bir false metodu
    • Yalnızca miktar pozitifse VE yeterli bakiye varsa bakiyeden düşme yapan ve başarılı işlem için withdraw(double amount), reddedilirse true döndüren bir false metodu
    • Şunu döndüren bir getAccountSummary() metodu: "Account [accountNumber] | Owner: [ownerName] | Balance: $[balance]" (bakiye 2 ondalık basamakla biçimlendirilmiş)
  • Main.java: Bir BankAccount oluştur ve bir dizi işlem gerçekleştir. Beş girdi alacaksın: hesap numarası, hesap sahibi adı, para yatırma miktarı, ilk para çekme miktarı ve ikinci para çekme miktarı. Dört satır yazdır:
    • Para yatırma işleminin sonucu: Deposit: true veya Deposit: false
    • İlk para çekme işleminin sonucu: Withdraw 1: true veya Withdraw 1: false
    • İkinci para çekme işleminin sonucu: Withdraw 2: true veya Withdraw 2: false
    • Son hesap özeti

Beş girdiyi şu sırayla alacaksın: accountNumber (String), ownerName (String), depositAmount (double), withdrawAmount1 (double), withdrawAmount2 (double).

Bakiyeyi 2 ondalık basamakla biçimlendirmek için String.format("%.2f", balance) kullanabilirsin.

Kendin dene

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        // Girdileri oku
        String accountNumber = scanner.nextLine();
        String ownerName = scanner.nextLine();
        double depositAmount = scanner.nextDouble();
        double withdrawAmount1 = scanner.nextDouble();
        double withdrawAmount2 = scanner.nextDouble();
        
        // TODO: accountNumber ve ownerName ile bir BankAccount nesnesi oluşturun
        
        // TODO: Para yatırma işlemini gerçekleştirin ve sonucu "Deposit: true" veya "Deposit: false" olarak yazdırın
        
        // TODO: İlk para çekme işlemini gerçekleştirin ve sonucu "Withdraw 1: true" veya "Withdraw 1: false" olarak yazdırın
        
        // TODO: İkinci para çekme işlemini gerçekleştirin ve sonucu "Withdraw 2: true" veya "Withdraw 2: false" olarak yazdırın
        
        // TODO: Hesap özetini yazdırın
    }
}

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

Kendi başına pratik yap: Online Java derleyicisi