Menu
Coddy logo textTech

Özet - Sayaç ve Utility

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

challenge icon

Görev

Kolay

Örnekleri izlemek için bir Counter sınıfı ile bir MathUtils yardımcı sınıfını birleştiren eksiksiz bir sistem oluşturalım - statik değişkenler, statik metotlar, statik bloklar ve sabitler hakkında öğrendiğiniz her şeyi bir araya getirelim.

Kodunuzu düzenlemek için üç dosya oluşturacaksınız:

  • Counter.java: Kaç tane örnek oluşturulduğunu takip eden bir sınıf oluşturun:
    • Toplam örnekleri saymak için bir private statik değişken
    • Her sayacın benzersiz tanımlayıcısını saklayan bir private örnek değişkeni id
    • Toplam sayıyı artıran ve mevcut sayıyı bu örneğin id'si olarak atayan bir yapıcı (constructor)
    • Bu sayacın benzersiz id'sini döndüren bir getId() metodu
    • Kaç tane Counter nesnesi oluşturulduğunu döndüren bir statik getTotalCount() metodu
  • MathUtils.java: Yalnızca statik üyelere sahip (hiçbir zaman örneği oluşturulmayan) bir yardımcı sınıf oluşturun:
    • 3.14159 değerine sahip bir public sabit PI
    • 0.5 değerine sahip bir public sabit HALF
    • n'in karesini döndüren bir statik square(int n) metodu
    • n'in küpünü döndüren bir statik cube(int n) metodu
    • PI * radius * radius değerini döndüren bir statik circleArea(double radius) metodu
  • Main.java: Her iki sınıfın birlikte çalışmasını gösterin. İki girdi alacaksınız: matematik işlemleri için bir sayı ve kaç tane Counter nesnesi oluşturulacağına dair bir sayı. Şunları yazdırın:
    • Square: [value]
    • Cube: [value]
    • Circle area (radius=[number]): [value] (alan 2 ondalık basamağa göre formatlanmış olmalı)
    • Oluşturulan her Counter için şunu yazdırın: Counter [id] created
    • Son olarak: Total counters: [count]

İki girdi alacaksınız: matematik hesaplamaları için bir sayı (int) ve kaç tane Counter nesnesi oluşturulacağı için bir sayı (int).

Statik üyelere sınıf adı üzerinden erişmeyi (örneğin MathUtils.PI ve Counter.getTotalCount()) ve ondalık değerleri formatlamak için String.format("%.2f", value) kullanmayı unutmayın.

Kendin dene

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int number = scanner.nextInt();
        int count = scanner.nextInt();
        
        // TODO: Hesaplamak ve yazdırmak için MathUtils statik metotlarını kullanın:
        // - Square: [value]
        // - Cube: [value]
        // - Circle area (radius=[number]): [value] (2 ondalık basamağa yuvarlanmış)
        
        // TODO: 'count' sayısı kadar Counter nesnesi oluşturun
        // Oluşturulan her Counter için şunu yazdırın: Counter [id] created
        
        // TODO: Oluşturulan toplam sayaç sayısını yazdırın
        // Total counters: [count]
    }
}

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