java kolos.docx

(1172 KB) Pobierz

Widoczności:

public – widoczny dla wszystkich

private – widoczny tylko wewnątrz danej klasy

protected – widoczny w obrębie pakietu oraz w klasach potomnych z innych pakietów

nienazwana (friendly) – jak public w obrębie pakietu

Modyfikatory:

static - dostęp bez uprzedniego utworzenia

final - brak możliwości zmiany (pola mogą być inicjalizowane w konstruktorze)

 

Zastosowanie widoczności:

klasa – public / friendly

klasa wewnętrzna – public / private / protected / friendly

konstruktor – public / protected / friendly

metoda – public / private / protected / friendly

pole – public / private / protected / friendly

stała – public / private

 

 

Dziedziczenie

.clone() - tworzy i zwraca kopię aktualnego obiektu

.equals(Object) - sprawdza, czy dany obiekt jest równy aktualnemu

.finalize() - metoda wywoływana przez Garbage Collector, gdy nie istnieje

żadna referencja do aktualnego obiektu

.getClass() - zwraca klasę reprezentującą obiekt

.hashCode() - zwraca wartość reprezentującą obiekt dla metody mieszającej

.toString() - zwraca reprezentację tekstową obiektu

 

this - wskazanie na aktualny obiekt

super – wskazanie na obiekt klasy bazowej (nadrzędnej)

 

instanceof – sprawdzenie, czy obiekt jest danej klasy

 

POLIMORFIZM

public class butelka {

              int pojemnosc=500;

              int zawartosc;

             

              int nalej_recznie(int napoj)

              {

                            return zawartosc=napoj;

              }

              int nalej_automatycznie()

              {

                            return zawartosc=pojemnosc;

              }

}

              class Napoj_gazowany extends butelka

              {

                            int pojemnosc=400;

                            int nalej_recznie(int napoj, int gaz)

                            {

                                          return zawartosc=napoj-gaz;

                            }

                            int nalej_automatycznie()

                            {

                                          return zawartosc=pojemnosc-(5*pojemnosc/100);

                            }

             

             

              public static void main(String[] args)

              {

                            butelka b = new butelka();

                            Napoj_gazowany ng = new Napoj_gazowany();

                            butelka b1 = new Napoj_gazowany();

                            System.out.println("Zawartosc butelki z napojem niegazowanym; "+b.nalej_automatycznie());

                            System.out.println("Zawartosc butelki z napojem gazowanym: "+ng.nalej_automatycznie());

                           

                            System.out.println("Zawartosc butelki z napojem niegazowanym: "+b.nalej_recznie(500));

                            System.out.println("Zawartosc butelki z napojem gazowanym: "+ng.nalej_recznie(500, 10));

 

                            System.out.println(b1.nalej_recznie(500));

                            System.out.println(((Napoj_gazowany)b1).nalej_recznie(500, 20));

                            if(b1 instanceof Napoj_gazowany)

                                          System.out.println("b1 instanceof Napoj_gazowany");

                                         

                           

              }

              }

 

 

Tablice:

tworzenie tablicy jednowymiarowej typu int

int[] tab = new int[10];

tworzenie tablicy wielowymiarowej

int[][] tab = new int[10][4];

tworzenie i inicjalizacja zawartości tablicy

int[] tab = { 5, 3, 8, 2, 7 };

liczba elementów tablicy

tab.length

odwołanie do i-tego elementu tablicy

tab[i]

 

 

 

 

 

 

 

 

 

 

 

 

 

losowanie elementu:

public class Main {

 

    public static void main(String[] args) {

        // Stworzenie obiektu klasy Random, który posłuży do loswania liczb

        Random r = new Random();

 

// Losowanie liczby z zakresu [0,10] do zmiennej a.

        int a = r.nextInt(11); // deklaracja i definicja zmiennej

        System.out.println(a);

 

       

 

// Losowanie liczby z zakresu [-5,15] i wyświetlenie jej na konsolę.

        System.out.println( r.nextInt(21)-5 );

        // 21, bo w przedziale [-5,15] jest 21 liczb i -5,

        // bo to najmniejsza liczba w zakresie.

 

 

// Losowanie liczby z zakresu [-20,-10] do zmiennej a.

        a = r.nextInt(11)-20;

        System.out.println(a);

        // 11, bo w przedziale [-20,10] jest 11 liczb i -20,

        // bo to najmniejsza liczba w zakresie.

 

// Losowanie liczb z zakresu [x,y], gdzie x i y, to zmienne

        // całkowitoliczbowe o dowolnej wartości.

        int x = 7; // To wartość przykładowa

        int y = 15; // To wartość przykładowa

 

        a = r.nextInt(y-x+1)+x; // Od większej (y) odejmujemy mniejszą (x) i

                              // dodajemy 1 - to daje liczność zbioru

                              // (w losowaniu), a następnie dodajemy

                              // mniejszą (x), bo to najmniejsza liczba

                              // w zakresie.

        System.out.println(a);

 

// Sprawdzenie powyższego przykładu dla liczb ujemnych:

        x = -27; // To wartość przykładowa

        y = -15; // To wartość przykładowa

        a = r.nextInt(y-x+1)+x;

        System.out.println...

Zgłoś jeśli naruszono regulamin