Introduzione alla programmazione orientata agli oggetti in Java

Java è una programmazione orientata agli oggetti progettata da James Gosling. È un linguaggio di programmazione per scopi generici che è basato su classi e con funzionalità di programmazione simultanee. Ha anche funzioni multi-threading. È un linguaggio di programmazione statico, sicuro e fortemente tipizzato. È stato sviluppato ed è gestito da Oracle Corporation (allora Sun Corporation). I nomi delle sue estensioni di file sono .java o .class. È apparso per la prima volta nel 1995. Ha lo scopo di sviluppare applicazioni che possono essere scritte una volta ed eseguite ovunque. È più popolare per il tipo di applicazioni client-server. È concesso in licenza con GNU General Public License e Java Community Process. L'ultima versione di Java è la 10, rilasciata a marzo 2018.

Spiegazione della programmazione orientata agli oggetti in Java

Il linguaggio di programmazione Java si basa sulla metodologia o paradigma di programmazione orientata agli oggetti che ha diversi tipi di concetti come classi, oggetti, ereditarietà, polimorfismo, incapsulamento e astrazione che possono essere descritti di seguito:

Classe: questo è un progetto dell'oggetto che definisce i campi o gli attributi e i metodi in cui si trova la funzionalità reale. Questi attributi e metodi sono chiamati membri e questi membri sono accessibili in base ai modificatori di accesso definiti durante la dichiarazione dei membri.

Oggetto: un oggetto viene chiamato come istanza della Classe che può essere dichiarata e istanziata chiamando il Costruttore della Classe. Un oggetto avrà lo stato e lo stato conterrà i dati che saranno conservati dagli attributi della classe.

Ereditarietà: si tratta della terza fase in cui i dati verranno ispezionati, puliti, trasformati e visualizzati riducendo le informazioni inutili e trasformandole in importanti set di informazioni al fine di ottenere alcune informazioni preziose dai dati esistenti.

Polimorfismo: il polimorfismo è definito come il processo di eseguire un singolo compito in diversi modi possibili. In Java, il polimorfismo può essere ottenuto in due modi chiamato sovraccarico del metodo e sostituzione del metodo. Il sovraccarico del metodo è anche chiamato polimorfismo del tempo di compilazione mentre il metodo Override è anche chiamato polimorfismo del tempo di esecuzione.

Incapsulamento: questo è il processo di incapsulamento che significa nascondere, legare o racchiudere il codice in una singola unità o modulo che è definita come Classe in Java. La funzione di incapsulamento della programmazione orientata agli oggetti può essere ottenuta utilizzando una classe in Java. Si dice che un semplice vecchio oggetto Java o Java Bean sia incapsulato poiché i membri della classe sono privati ​​(modificatore di accesso) quelli a cui è possibile accedere solo utilizzando i metodi getter e setter nella classe.

Astrazione: l'astrazione della caratteristica orientata agli oggetti può essere definita come il processo per nascondere l'implementazione delle funzionalità esponendo solo le interfacce richieste o accedendo ai metodi per invocare i metodi della classe Implementation. L'astrazione può essere ottenuta nel linguaggio di programmazione Java usando Interface e Abstract Class.

I vantaggi dell'utilizzo della programmazione orientata agli oggetti in Java

  1. Aiuta a sviluppare facilmente i diversi tipi di applicazione e la loro manutenzione senza costi aggiuntivi.
  2. Aiuta a implementare facilmente le modifiche apportando piccole modifiche al design e rendendo così l'applicazione più adattabile alle modifiche più grandi richieste dal cliente.
  3. La modularità nel codice facilita il processo di risoluzione dei problemi e la manutenzione correggendo facilmente i bug.
  4. Il riutilizzo del codice è il principale
  5. Offre una maggiore flessibilità nei confronti di frequenti cambi di funzionalità.

Applicazioni della programmazione orientata agli oggetti in Java

Esistono diverse applicazioni della programmazione orientata agli oggetti in Java e di seguito sono riportati esempi in questa area concettuale:

  1. Classe: una classe può essere definita come di seguito:

public class Employee (
private int employeeId;
private String employeeName;
public int getSalary(int basicPay, int da, int hra) (
int salary = basicPay + da + hra;
return salary;
)
)

Nella classe precedente EmployId, nome dell'impiegato e metodo getSalary () sono i membri della classe, mentre EmployId e il nome dell'impiegato sono gli attributi o i campi e getSalary () è il metodo in cui viene svolto il vero lavoro.

  1. Oggetto: un oggetto può essere creato come di seguito per il dipendente di classe sopra.

Employee employeeObject = new Employee();

Nella riga precedente, un oggetto viene creato utilizzando la nuova parola chiave e Employee () è il costruttore di argomenti vuoto utilizzato per creare l'oggetto. l'impiegato obietta il riferimento fatto al dipendente di classe.

  1. Polimorfismo: questo può essere ottenuto con l'override e il sovraccarico del metodo.

public int getSalary(int basicPay, int da, int hra) (
int salary = basicPay + da + hra;
return salary;
)

Nel metodo sopra è possibile aggiungere un altro argomento al metodo getSalary () aggiungendo tra parentesi come di seguito:

public int getSalary(int basicPay, int da, int hra, int bonus) (
int salary = basicPay + da + hra + bonus;
return salary;
)

  1. Incapsulamento: questo può essere ottenuto come di seguito:

public class Employee (
private int employeeId;
private String employeeName;
public int getEmployeeId() (
return employeeId;
)
public void setEmployeeId(int employeeId) (
this.employeeId = employeeId;
)
public String getEmployeeName() (
return employeeName;
)
public void setEmployeeName(String employeeName) (
this.employeeName = employeeName;
)
)

Il dipendente di classe sopra ha due campi (privato) e quattro metodi (getter e setter) che verranno utilizzati per accedere ai due attributi privati ​​sopra indicati.

  1. Astrazione: questo è il processo per nascondere la funzionalità di implementazione.

Nel metodo sopra getSalary (), la funzione interna dell'aggiunta di tutti i componenti di uno stipendio è nascosta all'interno del metodo e solo a questo è possibile accedere utilizzando il nome del metodo passando i valori come argomenti del metodo. In questo modo, lo stipendio totale sarà ottenuto passando i singoli componenti salariali al metodo.

Conclusione - Programmazione orientata agli oggetti in Java

Esistono aree diverse e multiple di applicazioni nel campo del mondo Web, standalone e molte altre aree per la programmazione orientata agli oggetti in Java. L'utilizzo medio o l'applicazione della programmazione orientata agli oggetti in Java è stata tra le prime 5 posizioni per la maggior parte delle applicazioni aziendali ed è stata in quasi tutte le aziende fin d'ora è la tecnologia più richiesta. Esistono moltissimi strumenti disponibili come gli IDE per sviluppare applicazioni utilizzando la programmazione orientata agli oggetti in Java e molte aziende che utilizzano applicazioni basate su Java per i loro requisiti a causa della facilità di sviluppo e manutenzione. Le app autonome sviluppate in Java sono utilizzate principalmente da molte aziende per i loro strumenti interni e sono sviluppate sulla base del toolkit GUI di Java Swing e ora chiamate come Java FX nella sua versione recente. La recente versione di Java 8 offre grandi funzionalità di programmazione funzionale e capacità di elaborazione parallela con la sua API Stream.

Articoli consigliati:

Questa è stata una guida alla programmazione orientata agli oggetti in Java. Qui abbiamo discusso i diversi concetti e le applicazioni della programmazione orientata agli oggetti in Java. Puoi anche leggere il seguente articolo per saperne di più -

  1. Oops Domande e risposte sull'intervista Java
  2. Programmazione funzionale vs differenze OOP
  3. Concetti di programmazione: una guida perfetta per i nuovi programmatori
  4. Domande di intervista per i test Java
  5. Metodo di sovraccarico in C #
  6. Guida completa agli oggetti in Java
  7. Oggetto in Python
  8. Sovraccarico e override in C #

Categoria: