Le classi e gli oggetti in Java sono i componenti fondamentali degli OOP. Spesso c'è una confusione tra classi e oggetti. In questo tutorial, proviamo a dirti la differenza tra Class e Object in Java.
Per prima cosa, capiamo cosa sono,
- Cos'è la classe in Java?
- Cos'è un oggetto in Java?
- Qual è la differenza tra oggetto e classe in Java?
- Concetto di classi e oggetti
- Classi e oggetti nei programmi di esempio Java
- Oggetto Java e esempio di classe: classe esterna principale
Cos'è la classe in Java?
Le classi sono un progetto o un insieme di istruzioni per costruire un tipo specifico di oggetto. È un concetto di base della programmazione orientata agli oggetti che ruota attorno alle entità della vita reale. La classe in Java determina come si comporterà un oggetto e cosa conterrà l'oggetto.Sintassi
class{field;method;}
Cos'è Object in Java?
Object è un'istanza di una classe. Un oggetto in OOPS non è altro che un componente autonomo costituito da metodi e proprietà per rendere utile un particolare tipo di dati. Ad esempio nome del colore, tavolo, borsa, abbaiare. Quando invii un messaggio a un oggetto, stai chiedendo all'oggetto di invocare o eseguire uno dei suoi metodi come definito nella classe.
Dal punto di vista della programmazione, un oggetto in OOPS può includere una struttura dati, una variabile o una funzione. Ha una posizione di memoria allocata. Gli oggetti Java sono progettati come gerarchie di classi.
Sintassi
ClassName ReferenceVariable = new ClassName();
Qual è la differenza tra oggetto e classe in Java?
Una classe nella programmazione orientata agli oggetti è un progetto o prototipo che definisce le variabili ei metodi (funzioni) comuni a tutti gli oggetti Java di un certo tipo.
Un oggetto in OOPS è un campione di una classe. Gli oggetti software sono spesso usati per modellare oggetti del mondo reale che trovi nella vita di tutti i giorni.
Fare clic qui se il video non è accessibile
Comprendi il concetto di classi e oggetti Java con un esempio.
Facciamo un esempio dello sviluppo di un sistema di gestione degli animali domestici, appositamente pensato per i cani. Avrai bisogno di varie informazioni sui cani come le diverse razze dei cani, l'età, la taglia, ecc.
Devi modellare esseri della vita reale, cioè cani, in entità software.
Inoltre, la domanda da un milione di dollari è: come progettate questo software?
Ecco la soluzione-
Per prima cosa, facciamo un esercizio.
Puoi vedere l'immagine di tre diverse razze di cani qui sotto.
Fermati qui adesso! Elenca le differenze tra loro.
Alcune delle differenze che potresti aver elencato potrebbero essere razza, età, taglia, colore, ecc. Se ci pensi per un minuto, queste differenze sono anche alcune caratteristiche comuni condivise da questi cani. Queste caratteristiche (razza, età, taglia, colore) possono formare membri di dati per il tuo oggetto.
Quindi, elenca i comportamenti comuni di questi cani come dormire, sedersi, mangiare, ecc. Quindi queste saranno le azioni dei nostri oggetti software.
Finora abbiamo definito le seguenti cose,
- Classe - Cani
- Membri o oggetti dei dati : taglia, età, colore, razza, ecc.
- Metodi : mangia, dormi, siediti e corri.
Ora, per diversi valori dei membri dei dati (taglia della razza, età e colore) nella classe Java, otterrai diversi oggetti cane.
È possibile progettare qualsiasi programma utilizzando questo approccio OOP.
Durante la creazione di una classe, è necessario seguire i seguenti principi.
- Principio di responsabilità unica (SRP): una classe dovrebbe avere un solo motivo per cambiare
- Responsabilità chiusa aperta (OCP) - Dovrebbe essere in grado di estendere qualsiasi classe senza modificarla
- Responsabilità di sostituzione di Liskov (LSR) - Le classi derivate devono essere sostituibili con le loro classi di base
- Principio di inversione delle dipendenze (DIP) - Dipende dall'astrazione e non dalle concrezioni
- Principio di segregazione dell'interfaccia (ISP): preparare interfacce a grana fine specifiche per il cliente.
Classi e oggetti nei programmi di esempio Java
// Class Declarationpublic class Dog {// Instance VariablesString breed;String size;int age;String color;// method 1public String getInfo() {return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);}public static void main(String[] args) {Dog maltese = new Dog();maltese.breed="Maltese";maltese.size="Small";maltese.age=2;maltese.color="white";System.out.println(maltese.getInfo());}}Produzione:
Breed is: Maltese Size is:Small Age is:2 color is: white
Oggetto Java e esempio di classe: classe esterna principale
Nel programma precedente, stiamo creando il metodo main () all'interno della classe. Ora creiamo classi e definiamo il metodo main () in un'altra classe. Questo è un modo migliore del precedente.
// Class Declarationclass Dog {// Instance VariablesString breed;String size;int age;String color;// method 1public String getInfo() {return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color);}}public class Execute{public static void main(String[] args) {Dog maltese = new Dog();maltese.breed="Maltese";maltese.size="Small";maltese.age=2;maltese.color="white";System.out.println(maltese.getInfo());}}
Produzione:
Breed is: Maltese Size is:Small Age is:2 color is: white
Sommario:
- Java Class è un'entità che determina come si comporteranno gli oggetti Java e quali oggetti conterranno
- Un oggetto Java è un componente autonomo che consiste di metodi e proprietà per rendere utile un certo tipo di dati
- Un sistema di classi consente al programma di definire una nuova classe (classe derivata) in termini di una classe esistente (superclasse) utilizzando una tecnica come l'ereditarietà, l'override e l'aumento.