Java – Obiect și clase

Reclame

Java este un limbaj orientat pe obiecte. Ca limbaj care are caracteristica orientată pe obiecte, Java acceptă următoarele concepte fundamentale –

  • Polimorfism
  • Moștenire
  • Incapsulare
  • Abstracție
  • Clase
  • Obiecte
  • Instanță
  • Metodă
  • Transmiterea mesajelor

În acest capitol, vom analiza conceptele – clase și obiecte.

  • Obiect – obiectele au stări și comportamente. Exemplu: un câine are stări – culoare, nume, rasă, precum și comportamente – care dă din coadă, latră, mănâncă. Un obiect este o instanță a unei clase.

  • Clasă – O clasă poate fi definită ca un șablon / plan care descrie comportamentul / starea pe care o acceptă obiectul tipului său.

Obiecte în Java

Să ne uităm acum adânc în ceea ce sunt obiecte. Dacă luăm în considerare lumea reală, putem găsi multe obiecte în jurul nostru, mașini, câini, oameni etc. Toate aceste obiecte au o stare și un comportament.

Dacă luăm în considerare un câine, atunci starea acestuia este – nume, rasă, culoare, iar comportamentul este – latră, dă din coadă, aleargă.

Dacă comparați obiectul software cu un obiect din lumea reală, acestea au caracteristici foarte similare.

Obiectele software au, de asemenea, o stare și un comportament. Starea unui obiect software este stocată în câmpuri și comportamentul este prezentat prin metode.

Deci, în dezvoltarea software-ului, metodele operează pe starea internă a unui obiect, iar comunicarea obiect-obiect se realizează prin metode. .

Clase în Java

O clasă este un plan din care sunt create obiecte individuale.

Urmează un exemplu de clasă.

Exemplu

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

O clasă poate conține oricare dintre următoarele tipuri de variabile.

  • Variabile locale – Variabile definite în interiorul metodelor, constructorii sau blocurile sunt numite variabile locale. Variabila va fi declarată și inițiată în cadrul metodei, iar variabila va fi distrusă la finalizarea metodei.

  • Variabile de instanță – Variabilele de instanță sunt variabile dintr-o clasă, dar în afara oricărei metode. Aceste variabile sunt inițializate atunci când este instanțiată clasa. Variabilele de instanță pot fi accesate din interiorul oricărei metode, constructori sau blocuri ale cla ss.

  • Variabile de clasă – Variabilele de clasă sunt variabile declarate în cadrul unei clase, în afara oricărei metode, cu cuvântul cheie static.

O clasă poate avea orice număr de metode pentru a accesa valoarea diferitelor tipuri de metode. În exemplul de mai sus, lătratul (), foamea () și somnul () sunt metode.

Următoarele sunt câteva dintre subiectele importante care trebuie discutate atunci când se analizează clasele limbajului Java.

Constructori

Când discutați despre clase, unul dintre cele mai importante subiecte ar fi constructorii. Fiecare clasă are un constructor. Dacă nu scriem în mod explicit un constructor pentru o clasă, compilatorul Java construiește un constructor implicit pentru acea clasă.

De fiecare dată când este creat un obiect nou, va fi invocat cel puțin un constructor. Principala regulă a constructorilor este că aceștia ar trebui să aibă același nume ca și clasa. O clasă poate avea mai mulți constructori.

Urmează un exemplu de constructor –

Exemplu

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

Java acceptă, de asemenea, Singleton Classes în care ați putea crea o singură instanță a unei clase.

Notă – Avem două tipuri diferite de constructori. Vom discuta constructorii în detaliu în capitolele următoare.

Crearea unui obiect

După cum sa menționat anterior, o clasă oferă planurile pentru obiecte. Deci, practic, un obiect este creat dintr-o clasă. În Java, noul cuvânt cheie este folosit pentru a crea obiecte noi.

Există trei pași atunci când creați un obiect dintr-o clasă –

  • Declarație – O declarație variabilă cu un nume de variabilă cu un tip de obiect.

  • Instanțare – Cuvântul cheie „nou” este utilizat pentru a crea obiectul.

  • Inițializare – Cuvântul cheie „nou” este urmat de un apel către un constructor. Acest apel inițializează noul obiect.

Următorul este un exemplu de creare a unui obiect –

Exemplu

Dacă compilăm și rulați programul de mai sus, apoi va produce următorul rezultat –

Ieșire

Passed Name is :tommy

Accesarea variabilelor și metodelor de instanță

Variabilele și metodele de instanță sunt accesate prin intermediul obiectelor create. Pentru a accesa o variabilă de instanță, urmează calea complet calificată –

Exemplu

Acest exemplu explică cum se accesează variabilele de instanță și metodele unei clase.

Dacă compilăm și rulăm programul de mai sus, atunci acesta va produce următorul rezultat –

Ieșire

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

Reguli de declarație a fișierului sursă

Ca ultimă parte a acestei secțiuni, să analizăm regulile de declarație a fișierului sursă. Aceste reguli sunt esențiale atunci când declarăm clase, declarații de import și instrucțiuni de pachet într-un fișier sursă.

  • Nu poate exista o singură clasă publică pentru fiecare fișier sursă.

  • Un fișier sursă poate avea mai multe clase non-publice.

  • Numele clasei publice ar trebui să fie și numele fișierului sursă, care ar trebui să fie atașat de .java la sfârșit. De exemplu: numele clasei este clasa publică Employee {} atunci fișierul sursă ar trebui să fie ca Employee.java.

  • Dacă clasa este definită într-un pachet, atunci instrucțiunea de pachet ar trebui să fie prima instrucțiune din fișierul sursă.

  • Dacă sunt prezente declarații de import, atunci acestea trebuie scrise între declarația de pachet și fișierul declarație de clasă. Dacă nu există declarații de pachet, atunci declarația de import ar trebui să fie prima linie din fișierul sursă.

  • Declarațiile de import și pachet vor implica toate clasele prezente în fișierul sursă. . Nu este posibil să declarați diferite instrucțiuni de import și / sau pachet pentru diferite clase din fișierul sursă.

Clasele au mai multe niveluri de acces și există diferite tipuri de clase; clase abstracte, clase finale etc. Vom explica toate acestea în capitolul modificatori de acces.

În afară de tipurile de clase menționate mai sus, Java are și câteva clase speciale numite clase interioare și clase anonime.

Pachetul Java

În cuvinte simple, este un mod de a clasifica clasele și interfețele. Atunci când dezvoltați aplicații în Java, se vor scrie sute de clase și interfețe, prin urmare, clasificarea acestor clase este o necesitate, precum și viața mult mai ușoară.

Importați declarații

În Java dacă un nume complet calificat, care include pachetul și se dă numele clasei, atunci compilatorul poate localiza cu ușurință codul sau clasele sursă. Declarația de import este o modalitate de a oferi locația corectă pentru ca compilatorul să găsească acea clasă.

De exemplu, următoarea linie i-ar cere compilatorului să încarce toate clasele disponibile în directorul java_installation / java / io –

import java.io.*;

Un studiu de caz simplu

Pentru studiul nostru de caz, vom crea două clase. Acestea sunt Employee și EmployeeTest.

Mai întâi deschideți blocnotesul și adăugați următorul cod. Amintiți-vă că aceasta este clasa Angajați, iar clasa este o clasă publică. Acum, salvați acest fișier sursă cu numele Employee.java.

Clasa Employee are patru variabile de instanță – nume, vârstă, desemnare și salariu. Clasa are un constructor definit explicit, care ia un parametru.

Exemplu

După cum sa menționat anterior în acest tutorial, procesarea începe de la metoda principală. Prin urmare, pentru ca noi să rulăm această clasă de angajați, ar trebui să existe o metodă principală și ar trebui create obiecte. Vom crea o clasă separată pentru aceste sarcini.

Urmează clasa EmployeeTest, care creează două instanțe din clasa Employee și invocă metodele pentru fiecare obiect pentru a atribui valori pentru fiecare variabilă.

Salvați următorul cod în fișierul EmployeeTest.java.

Acum, compilați ambele clase și apoi executați EmployeeTest pentru a vedea rezultatul după cum urmează –

Output

Ce urmează?

În următoarea sesiune, vom discuta despre tipurile de date de bază în Java și despre modul în care acestea pot fi utilizate la dezvoltarea aplicațiilor Java.

Reclame

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *