Java – obiekt i klasy

reklamy

Java jest językiem zorientowanym obiektowo. Jako język posiadający funkcję zorientowaną obiektowo, Java obsługuje następujące podstawowe pojęcia –

  • Polimorfizm
  • Dziedziczenie
  • Enkapsulacja
  • Abstrakcja
  • Klasy
  • Obiekty
  • Instancja
  • Metoda
  • Przekazywanie wiadomości

W tym rozdziale przyjrzymy się pojęciom – klasom i obiektom.

  • Obiekt – obiekty mają stany i zachowania. Przykład: Pies ma stany – maść, imię, rasę, a także zachowania – merdanie ogonem, szczekanie, jedzenie. Obiekt jest instancją klasy.

  • Klasa – Klasa może być zdefiniowana jako szablon / plan, który opisuje zachowanie / stan, które obsługuje obiekt jej typu.

Obiekty w Javie

Przyjrzyjmy się teraz szczegółowo, czym są obiekty. Jeśli weźmiemy pod uwagę rzeczywisty świat, możemy znaleźć wiele obiektów wokół nas, samochodów, psów, ludzi itp. Wszystkie te obiekty mają stan i zachowanie.

Jeśli weźmiemy pod uwagę psa, to jego stan to – nazwa, rasa, kolor, a zachowanie to – szczekanie, machanie ogonem, bieganie.

Jeśli porównasz obiekt oprogramowania z obiektem w świecie rzeczywistym, mają one bardzo podobne cechy.

Obiekty oprogramowania również mają stan i zachowanie. Stan obiektu oprogramowania jest przechowywany w polach, a zachowanie jest przedstawiane za pomocą metod.

Zatem w tworzeniu oprogramowania metody działają na wewnętrznym stanie obiektu, a komunikacja obiekt-obiekt odbywa się za pomocą metod .

Klasy w Javie

Klasa to plan, na podstawie którego tworzone są poszczególne obiekty.

Poniżej znajduje się próbka klasy.

Przykład

public class Dog { String breed; int age; String color; void barking() { } void hungry() { } void sleeping() { }}

Klasa może zawierać dowolny z następujących typów zmiennych.

  • Zmienne lokalne – Zmienne zdefiniowane wewnątrz metod, konstruktorów lub bloków nazywane są zmiennymi lokalnymi. Zmienna zostanie zadeklarowana i zainicjowana w ramach metody, a zmienna zostanie zniszczona po zakończeniu metody.

  • Zmienne instancji – Zmienne instancji to zmienne w klasie, ale poza jakąkolwiek metodą. Zmienne te są inicjowane podczas tworzenia instancji klasy. Dostęp do zmiennych instancji można uzyskać z poziomu dowolnej metody, konstruktora lub bloków tej konkretnej klauzuli ss.

  • Zmienne klasowe – Zmienne klasowe to zmienne zadeklarowane w klasie, poza jakąkolwiek metodą, za pomocą słowa kluczowego static.

Klasa może mieć dowolną liczbę metod dostępu do wartości różnych rodzajów metod. W powyższym przykładzie barking (), hungry () i sleeping () są metodami.

Poniżej przedstawiono niektóre z ważnych tematów, które należy omówić podczas przeglądania klas języka Java.

Konstruktory

Podczas dyskusji o klasach jednym z najważniejszych tematów podrzędnych są konstruktory. Każda klasa ma konstruktora. Jeśli nie napiszemy jawnie konstruktora dla klasy, kompilator Java zbuduje domyślny konstruktor dla tej klasy.

Za każdym razem, gdy tworzony jest nowy obiekt, wywoływany jest co najmniej jeden konstruktor. Główną zasadą konstruktorów jest to, że powinny mieć taką samą nazwę jak klasa. Klasa może mieć więcej niż jeden konstruktor.

Poniżej znajduje się przykład konstruktora –

Przykład

public class Puppy { public Puppy() { } public Puppy(String name) { // This constructor has one parameter, name. }}

Java obsługuje również klasy singleton, w których można by utworzyć tylko jedną instancję klasy.

Uwaga – mamy dwa różne typy konstruktorów. W następnych rozdziałach szczegółowo omówimy konstruktory.

Tworzenie obiektu

Jak wspomniano wcześniej, klasa dostarcza projekty obiektów. Zasadniczo obiekt jest tworzony z klasy. W Javie słowo kluczowe new służy do tworzenia nowych obiektów.

Podczas tworzenia obiektu z klasy są trzy kroki –

  • Deklaracja – Deklaracja zmiennej z nazwą zmiennej z typem obiektu.

  • Instancja – słowo kluczowe „nowe” służy do tworzenia obiektu.

  • Inicjalizacja – po słowie kluczowym „new” następuje wywołanie konstruktora. To wywołanie inicjuje nowy obiekt.

Poniżej znajduje się przykład tworzenia obiektu –

Przykład

Jeśli skompilujemy i uruchom powyższy program, a następnie wygeneruje następujący wynik –

Wyjście

Passed Name is :tommy

Dostęp do zmiennych i metod instancji

Zmienne i metody instancji są dostępne za pośrednictwem utworzonych obiektów. Aby uzyskać dostęp do zmiennej instancji, poniżej znajduje się pełna ścieżka –

Przykład

Ten przykład wyjaśnia, jak uzyskać dostęp do zmiennych instancji i metod klasy.

Jeśli skompilujemy i uruchomimy powyższy program, da on następujący wynik –

Wyjście

Name chosen is :tommyPuppy"s age is :2Variable Value :2

Reguły deklaracji pliku źródłowego

W ostatniej części tej sekcji przyjrzyjmy się teraz regułom deklaracji pliku źródłowego. Reguły te są niezbędne podczas deklarowania klas, instrukcji importu i instrukcji pakietów w pliku źródłowym.

  • W pliku źródłowym może istnieć tylko jedna klasa publiczna.

  • Plik źródłowy może mieć wiele klas niepublicznych.

  • Publiczna nazwa klasy powinna być również nazwą pliku źródłowego, do której należy dodać na końcu .java. Na przykład: nazwa klasy to public class Pracownik {} wówczas plik źródłowy powinien mieć format Employee.java.

  • Jeśli klasa jest zdefiniowana w pakiecie, wówczas instrukcja pakietu powinna być pierwszą instrukcją w pliku źródłowym.

  • Jeśli obecne są instrukcje importu, należy je zapisać między instrukcją pakietu a deklaracja klasy. Jeśli nie ma instrukcji pakietu, to instrukcja import powinna być pierwszą linią w pliku źródłowym.

  • Instrukcje importu i pakietu będą dotyczyły wszystkich klas obecnych w pliku źródłowym . Nie jest możliwe zadeklarowanie różnych instrukcji importu i / lub pakietów dla różnych klas w pliku źródłowym.

Klasy mają kilka poziomów dostępu i są różne typy klas; klasy abstrakcyjne, klasy końcowe itp. Wyjaśnimy to wszystko w rozdziale o modyfikatorach dostępu.

Oprócz wyżej wymienionych typów klas, Java posiada również specjalne klasy zwane klasami wewnętrznymi i klasami anonimowymi.

Pakiet Java

W prostych słowach jest to sposób kategoryzowania klas i interfejsów. Podczas tworzenia aplikacji w Javie zostaną napisane setki klas i interfejsów, dlatego kategoryzacja tych klas jest koniecznością, a także znacznie ułatwia życie.

Importuj instrukcje

W Javie, jeśli a w pełni kwalifikowaną nazwę, która zawiera pakiet i podana jest nazwa klasy, wówczas kompilator może łatwo zlokalizować kod źródłowy lub klasy. Instrukcja Import jest sposobem na podanie kompilatorowi właściwej lokalizacji, aby znalazł tę konkretną klasę.

Na przykład poniższy wiersz poprosiłby kompilator o załadowanie wszystkich klas dostępnych w katalogu java_installation / java / io –

import java.io.*;

Proste studium przypadku

Na potrzeby naszego studium przypadku utworzymy dwie klasy. Są to Employee i EmployeeTest.

Najpierw otwórz notatnik i dodaj następujący kod. Pamiętaj, że to jest klasa pracownika, a klasa jest klasą publiczną. Teraz zapisz ten plik źródłowy pod nazwą Employee.java.

Klasa Employee zawiera cztery zmienne instancji – imię i nazwisko, wiek, stanowisko i wynagrodzenie. Klasa ma jeden jawnie zdefiniowany konstruktor, który przyjmuje parametr.

Przykład

Jak wspomniano wcześniej w tym samouczku, przetwarzanie rozpoczyna się od metody main. Dlatego, abyśmy mogli uruchomić tę klasę Employee, powinna istnieć główna metoda i powinny zostać utworzone obiekty. Będziemy tworzyć osobną klasę dla tych zadań.

Poniżej znajduje się klasa EmployeeTest, która tworzy dwie instancje klasy Employee i wywołuje metody dla każdego obiektu w celu przypisania wartości każdej zmiennej.

Zapisz następujący kod w pliku EmployeeTest.java.

Teraz skompiluj obie klasy, a następnie uruchom EmployeeTest, aby zobaczyć wynik w następujący sposób –

Wyjście

Co dalej?

W następnej sesji omówimy podstawowe typy danych w Javie i sposób ich wykorzystania podczas tworzenia aplikacji Java.

Reklamy

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *