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
- Aiuta a sviluppare facilmente i diversi tipi di applicazione e la loro manutenzione senza costi aggiuntivi.
- 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.
- La modularità nel codice facilita il processo di risoluzione dei problemi e la manutenzione correggendo facilmente i bug.
- Il riutilizzo del codice è il principale
- 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:
- 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.
- 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.
- 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;
)
- 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.
- 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ù -
- Oops Domande e risposte sull'intervista Java
- Programmazione funzionale vs differenze OOP
- Concetti di programmazione: una guida perfetta per i nuovi programmatori
- Domande di intervista per i test Java
- Metodo di sovraccarico in C #
- Guida completa agli oggetti in Java
- Oggetto in Python
- Sovraccarico e override in C #