Menu
Coddy logo textTech

Przegląd projektu i projekt UML

Część sekcji Programowanie obiektowe ścieżki Java w Coddy. Lekcja 77 z 87.

challenge icon

Wyzwanie

Łatwy

Zacznijmy projekt Systemu zarządzania biblioteką od zbudowania jego podstaw: głównych klas encji, od których zależeć będzie cała reszta. To pierwsze wyzwanie skupia się na utworzeniu dobrze zorganizowanych klas Book i User, które modelują główne encje systemu.

Rozmieścisz swój kod w trzech plikach:

  • Book.java: Utwórz klasę Book, która reprezentuje książkę z biblioteki. Każda książka powinna mieć prywatne pola: isbn (String), title (String), author (String) i isAvailable (boolean, domyślnie ustawione na true). Dodaj konstruktor przyjmujący isbn, title i author. Zapewnij odpowiednie metody pobierające dla wszystkich pól oraz metodę ustawiającą dla isAvailable. Dodaj metodę getDetails(), która zwraca sformatowany ciąg znaków: [isbn] title by author.
  • User.java: Utwórz klasę User reprezentującą członka biblioteki. Każdy użytkownik powinien mieć prywatne pola id (String) i name (String). Dodaj konstruktor przyjmujący obie wartości oraz metody pobierające dla każdego pola. Dodaj metodę toString(), która zwraca: User[id]: name.
  • Main.java: Połącz swoje klasy, aby zademonstrować, że działają poprawnie. Otrzymasz pięć danych wejściowych: ISBN, tytuł i autora książki, a następnie identyfikator i nazwę użytkownika.

    Utwórz obiekt Book z pierwszych trzech danych wejściowych, a obiekt User z dwóch ostatnich. Wyświetl szczegóły książki za pomocą getDetails(), a następnie wyświetl, czy książka jest dostępna, w formacie Available: true lub Available: false. Na koniec wyświetl użytkownika za pomocą jego metody toString().

Otrzymasz pięć danych wejściowych w następującej kolejności: ISBN (String), tytuł (String), autor (String), identyfikator użytkownika (String) i nazwa użytkownika (String).

Na przykład dla danych wejściowych 978-0-13-468599-1, Effective Java, Joshua Bloch, U001 i Alice Smith wynikiem będzie:

[978-0-13-468599-1] Effective Java by Joshua Bloch
Available: true
User[U001]: Alice Smith

Te podstawowe klasy będą fundamentem całego Systemu zarządzania biblioteką. W kolejnych lekcjach rozbudujesz je o funkcje wypożyczania, możliwości wyszukiwania i nie tylko!

Spróbuj swoich sił

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        // Wczytaj informacje o książce
        String isbn = scanner.nextLine();
        String title = scanner.nextLine();
        String author = scanner.nextLine();
        
        // Wczytaj informacje o użytkowniku
        String userId = scanner.nextLine();
        String userName = scanner.nextLine();
        
        // TODO: Utwórz obiekt Book z isbn, title i author
        
        // TODO: Utwórz obiekt User z userId i userName
        
        // TODO: Wyświetl szczegóły książki za pomocą getDetails()
        
        // TODO: Wyświetl, czy książka jest dostępna (format: "Available: true" lub "Available: false")
        
        // TODO: Wyświetl użytkownika za pomocą toString()
    }
}

Wszystkie lekcje w sekcji Programowanie obiektowe

Poćwicz samodzielnie: Kompilator Java online