Skip to content

Instantly share code, notes, and snippets.

@pjastr
Last active October 25, 2017 09:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pjastr/d1709f7fdd048e1770fec39c8952c10f to your computer and use it in GitHub Desktop.
Save pjastr/d1709f7fdd048e1770fec39c8952c10f to your computer and use it in GitHub Desktop.
  1. Wykonaj w ramach jednego projektu następujące polecenia:
  • Stwórz klasę Car.
  • Stwórz w niej nowe prywatne pola double pojemonoscSilnika, String marka.
  • Stwórz obiekt typu Car, czy masz dostęp do jego pól? czy możesz zmienić wartości? (nie zmieniaj pól klasy na publiczne).
  • Do klasy Car dodaj samodzielnie napisany konstruktor bez parametru.
  • Przeciąż konstruktor tworząc nowy: Car(double pojemonoscSilnika, String marka). Niech ten parametryczny konstruktor ustawia wartości pól pojemność silnika oraz marka. (użyj inicjalizatora this).
  • Stwórz nowy obiekt za pomocą konstruktora parametrycznego.
  • Za pomocą debuggera sprawdź jakie warości na prywatnych polach ma obiekt numer 1, a jakie obiekt 2.
  • Zmień modyfikatory dostępu konstruktorów na private. Czy jest możliwe utworzenie nowego obiektu tej klasy? Co się stało z konstruktorem domyślnym?
  • W klasie Car stwórz metodę Create(), która będzie zwracać obiekt.
  • Stwórz obiekt dzięki metodzie Create() (pamiętałeś o dodaniu static do metody? )
  • Utwórz statyczne pole int iloscKol. Następnie stwórz statyczny blok ustawiający wartość tego pola na 4. Jak możesz odwołać się do pola? czy możesz go zmodyfikować?
  • Uruchom program i w debuggerze sprawdź jaką wartość pola iloscKol ma wczesniej stworzony obiekt.
  • Dodaj w klasie Car finalne (final) pole iloscDrzwi i ustaw mu wartość 4. Jak możesz się do niego odnieść? czy możesz go zmodyfikować?
  1. Stwórz klasę Matematyka i dodaj w niej statyczne pole pi i nadaj mu wartość 3.14. Następnie w tej klasie dodaj statyczne metody z 1 parametrem pozwalające obliczyć pole i obwód koła. W klasie Main i metodzie Main przećwiczyć użycie tych metod.
  2. W klasie Main poza metodą Main dodaj kod:
    static String OpiszTyp()
    {
        return "Metoda bez argumentów";
    }
    static String OpiszTyp(int x)
    {
        return "Liczba całkowita";
    }
    static String OpiszTyp(String x)
    {
        return "Łańcuch znaków";
    }
    static String OpiszTyp(int x, int y)
    {
        return "Dwie liczby calkowite";
    }

W metodzie Main przetestuj działanie tych metod.

  1. Stwórz klasę Konto z kilkoma polami, metodami i konstruktorami (saldo początkowe, końcowe, przelew miedzy kontami, przelew zewnętrzny, wplata, wyplata itd.) Następnie utwórz co najmniej 3 obiekty i wykonaj kilka metody na nich.
  2. Stwórz klasę Telefon, która będzie zawierała parametry do obsługi bilingu (usługa prepaid).Dodatkowo ma zawierać metody, konstruktory (saldo początkowe, końcowe, doładowanie, wysłanie smsa, rozmowa, połączenie z internetem, usługi premium). Potem stwórz kilka obiektów i wykonaj na nich metody. Na ekranie wyświetl „bilingi” dla stworzonych obiektów.

Do przemyślenia:

  1. Czy w języku Java możemy określić sensownie destruktor (bądź inny sposób na niszczenie obiektów)?

  2. Czy w języku Java jest odpowiednik właściwości z C#?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment