Java API, dokumentacja

W skład platformy Java wchodzą dwa komponenty - maszyna wirtualna (interpreter bajtkodów) oraz biblioteka klas i interfejsów. Przeanalizujemy sposoby wykorzystania klas bibliotecznych wchodzących w skład każdej pełnej implementacji platformy Java oraz posługiwanie się dokumentacją.

Przykład 2.1

Poniżej znajdziesz kod źródłowy programu który tworzy obiekt reprezentujący prostokąt o zadanym wierzchołku, długości i wysokości i wykonuje na nim operację translacji o wektor \((1,-1)\). Przeanalizuj przykład i porównaj użycie klasy bibliotecznej java.awt.Rectangle z użyciem Twojej własnej implementacji klasy Prostokat z poprzednich zajęć. Przypomnij sobie zagadnienia nazewnictwa klas oraz definiowania i importowania pakietów (wykład) i przeanalizuj je w kontekście wykorzystania klas Java Platform API.

import java.awt.Rectangle;

public class Program
{
  public static void main(String[] args)
  {
    Rectangle obj=new Rectangle(0,0,4,3);

    obj.translate(1,-1);

    System.out.println(obj);
  }
}

Ćwiczenie 2.1.1

Zapoznaj się z dokumentacją klasy bibliotecznej java.awt.Rectangle. W oparciu o informacje z poprzednich ćwiczeń zidentyfikuj pola, konstruktory i metody tej klasy i odpowiedz na pytanie jaka jest ich interpretacja i do czego służą.

Ćwiczenie 2.1.2

Utwórz obiekt obj1 reprezentujący prostokąt o wierzchołku w punkcie o współrzędnych \((0,0)\), długości \(4\) i wysokości \(3\) oraz obiekt obj2 reprezentujący prostokąt o wierzchołku w punkcie \((1,1)\), długości \(4\) i wysokości \(3\). Posługując się dokumentacją klasy java.awt.Rectangle znajdź odpowiednie metody i napisz program który utworzy obiekt reprezentujący prostokąt będący przecięciem (częścią wspólną) obj1 i obj2. Skompiluj i przetestuj przykład.

Ćwiczenie 2.1.3

Utwórz obiekt obj1 reprezentujący prostokąt o wierzchołku w punkcie o współrzędnych \((1,1)\), długości \(4\) i wysokości \(5\) oraz obiekt obj2 reprezentujący prostokąt o wierzchołku w punkcie \((2,0)\), długości \(2\) i wysokości \(3\). Posługując się dokumentacją klasy java.awt.Rectangle znajdź odpowiednie metody i napisz program który sprawdzi czy prostokąt obj1 zawiera się w prostokącie obj2. Skompiluj i przetestuj przykład.

Ćwiczenie 2.1.4

Utwórz obiekt obj reprezentujący prostokąt o wierzchołku w punkcie o współrzędnych \((-3,0)\), długości \(6\) i wysokości \(3\). Posługując się dokumentacją klasy java.awt.Rectangle znajdź odpowiednie metody i napisz program który sprawdzi czy punkt o współrzędnych \((2,-1)\) leży wewnątrz prostokąta obj. Skompiluj i przetestuj przykład.

Ćwiczenie 2.1.5

Utwórz obiekt obj1 reprezentujący prostokąt o wierzchołku w punkcie o współrzędnych \((1,1)\), długości \(4\) i wysokości \(5\) oraz obiekt obj2 reprezentujący prostokąt o wierzchołku w punkcie \((4,-3)\), długości \(4\) i wysokości \(3\). Posługując się dokumentacją klasy java.awt.Rectangle znajdź odpowiednie metody i napisz program który sprawdzi czy prostokąt obj1 przecina prostokąt obj2. Skompiluj i przetestuj przykład.

Przykład 2.2

Poniżej znajdziesz przykład wykorzystania klas Java Platform API do wprowadzenia danych z klawiatury. Przykład ilustruje także koncepcję obsługi wyjątków i związaną z tym składnię.

import java.io.*;

public class A
{
  static double KURS=3.8;

  public static void main(String[] args)
  {
    try
    {
      BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
      System.out.print("$: ");
      String str=br.readLine();double x=Double.parseDouble(str);
      System.out.println("PLN: "+x*KURS);
    }

    catch(IOException e1)
    {
      System.out.println("wyjatek operacji wejscia/wyjscia");
    }

    catch(NumberFormatException e2)
    {
      System.out.println("nieprawidlowy format liczby");
    }
  }
}

Ćwiczenie 2.2.1

Rozwiń przykład w ten sposób żeby umożliwić wybór pomiędzy kilkoma różnymi walutami i następnie przeliczenie ich po danym kursie.

Następna część - Dziedziczenie i polimorfizm