Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Java – coś na temat Klas Piotr Rosik 132808.

Podobne prezentacje


Prezentacja na temat: "Java – coś na temat Klas Piotr Rosik 132808."— Zapis prezentacji:

1 Java – coś na temat Klas Piotr Rosik 132808

2 Klasy Wygląd klasy: [modyfikatory] class NazwaKlasy { /*ciało klasy */} W Javie modyfikatory możemy podzielić na dwa rodzaje: a) modyfikatory dostępu (private, protected, public, package) public - wszystkie klasy mają dostęp do pól danych i metod public, private - dostęp do metod i pól danych posiadają jedynie inne metody tej samej klasy, protected - metoda lub pole danych protected lub może być używana jedynie przez metody swojej klasy oraz metody wszystkich jej klas pochodnych, package - jest to modyfikator domyślny, wszystkie metody i pola danych bez modyfikatora dostępu traktowane są jako typu package. Metody (lub pola danych) typu package mogą być używane przez inne klasy danego pakietu.

3 b) Modyfikatory właściwości modyfikowanego elementu
możemy używać modyfikatorów: public, abstract, final.

4 Obiekt klasy Wartości domyślne dla składowych typu podstawowego:
Class Dane{ int i; float f; } Możemy stworzyć obiekt: Dane d = new Dane(); Odwolanie: d.i = 45; d.f = 4.1f; Wartości domyślne dla składowych typu podstawowego: Nazwa typu Wartość domyślna boolean false char ‘\u0000’ byte (byte)0 short (short)0 int long 0L float 0.0f double 0.0d

5 Statyczne pola danych i metody
Pole danych lub metoda zadeklarowana z modyfikatorem static deklaracja oznacza, że pole danych lub metoda dotyczy klasy, a nie obiektu Odwołanie do statycznego pola danych może mieć postać: NazwaKlasy.PoleDanych, a dla metod statycznych NazwaKlasy.Metoda()

6 Odwołanie do metod i zmiennych typu static
class KontoOsobiste { static byte Oprocentowanie = 10; private Osoba Wlasciciel; ... static void ZmienOprocentowanie(byte nowyProcent) Oprocentowanie = nowyProcent; } public static void main(String[] args) { KontoOsobiste.Oprocentowanie = 20; KontoOsobiste rachunek = new KontoOsobiste(); rachunek.ZmienOprocentowanie(40); KontoOsobiste.ZmienOprocentowanie(30); }

7 Konstruktor konstruktor zostaje wywołany podczas tworzenia nowego obiektu klasy metodą o nazwie identycznej, jak nazwa klasy(ważna jest wielkość liter) każda klasa może posiadać wiele konstruktorów, różniących się listą argumentów

8 Konstruktor public class Punkt { public int X; public int Y; }
Punkt A = new Punkt(); public class Punkt { public int nX; public int nY; public Punkt(int X, int Y) nX=X; nY=Y; } Punkt P = new Punkt (4,5);

9 Przeciążanie konstruktora
nazwa konstruktora jest zdeterminowana wcześniej przez nazwę klasy, może istnieć tylko jedna taka nazwa Konstruktory tej samej klasy różnią się unikatową listą argumentów

10 this Słowo kluczowe this oznacza referencję do "samego siebie", czyli do obiektu, przez który został wywołany. public class Leaf { int i = 0; Leaf increment() i++; return this; } void print() { System.out.println("i = " + i); public static void main(String[] args) Leaf x = new Leaf(); x.increment().increment().increment().print(); Służy również do wywoływania konstruktorów z konstruktorów W konstruktorze podanie słowa kluczowego this oraz listę argumentów, to spowoduje wywołanie konstruktora, do którego pasuje ta lista Nie można dwukrotnie wywołać „this” Nie można użyć „this” poza konstruktorem w celu wywołania innego konstruktora

11 Rodzaje klas Klasa finalna
Nie można z niej dziedziczyć i nie pozwalamy, aby z niej dziedziczono Wszystkie jej metody automatycznie stają się finalne

12 Rodzaje klas c.d. Klasa abstrakcyjna
Klasa zawierająca metody abstrakcyjne nazywana jest klasą abstrakcyjną Nie mamy możliwości bezpośredniego tworzenia obiektów danej klasy

13 Klasy wewnętrzna Klasa wewnętrzna – klasa wewnątrz innej definicji klasy. Posiada prawo dostępu do wszystkich elementów klasy je otaczającej, obiekt klasy wew. Zawiera specjalny lacznik z obiektem klasy zewnętrznej, mogą mieć modyfikator static.

14 Klasa anonimowa klasa bez nazwy i konstruktora,
definiowana za pomocą wyrażenia postaci: new NazwaNadKlasy(arg, arg, ...){...};

15 Bibliografia Thinking in Java – Bruce Eckel
- Artur Tyloch


Pobierz ppt "Java – coś na temat Klas Piotr Rosik 132808."

Podobne prezentacje


Reklamy Google