Klassen en objecten in Java zijn de fundamentele componenten van OOP's. Vaak is er verwarring tussen klassen en objecten. In deze zelfstudie proberen we u het verschil te vertellen tussen Klasse en Object in Java.
Laten we eerst eens kijken wat ze zijn,
- Wat is klasse in Java?
- Wat is een object in Java?
- Wat is het verschil tussen object en klasse in Java?
- Concept van klassen en objecten
- Klassen en objecten in Java-voorbeeldprogramma's
- Voorbeeld van Java-object en klasse: hoofd buiten klasse
Wat is klasse in Java?
Klasse is een blauwdruk of een reeks instructies om een specifiek type object te bouwen. Het is een basisconcept van objectgeoriënteerd programmeren dat draait om de real-life entiteiten. Klasse in Java bepaalt hoe een object zich zal gedragen en wat het object zal bevatten.Syntaxis
class{field;method;}
Wat is Object in Java?
Object is een instantie van een klasse. Een object in OOPS is niets anders dan een op zichzelf staand onderdeel dat bestaat uit methoden en eigenschappen om een bepaald type gegevens bruikbaar te maken. Bijvoorbeeld kleurnaam, tafel, tas, blaffen. Wanneer u een bericht naar een object verzendt, vraagt u het object om een van zijn methoden aan te roepen of uit te voeren, zoals gedefinieerd in de klasse.
Vanuit het oogpunt van programmeren kan een object in OOPS een datastructuur, een variabele of een functie bevatten. Het heeft een toegewezen geheugenlocatie. Java-objecten zijn ontworpen als klassehiërarchieën.
Syntaxis
ClassName ReferenceVariable = new ClassName();
Wat is het verschil tussen object en klasse in Java?
Een klasse in objectgeoriënteerd programmeren is een blauwdruk of prototype dat de variabelen en de methoden (functies) definieert die gemeenschappelijk zijn voor alle Java-objecten van een bepaald soort.
Een object in OOPS is een exemplaar van een klasse. Software-objecten worden vaak gebruikt om objecten uit de echte wereld te modelleren die u in het dagelijks leven aantreft.
Klik hier als de video niet toegankelijk is
Begrijp het concept van Java-klassen en -objecten met een voorbeeld.
Laten we een voorbeeld nemen van het ontwikkelen van een huisdierbeheersysteem, speciaal bedoeld voor honden. Je hebt verschillende informatie over de honden nodig, zoals verschillende rassen van de honden, de leeftijd, grootte, enz.
Je moet echte wezens, dat wil zeggen honden, in software-entiteiten modelleren.
Bovendien is de vraag van een miljoen dollar: hoe ontwerp je dergelijke software?
Hier is de oplossing-
Laten we eerst een oefening doen.
U kunt de foto van drie verschillende hondenrassen hieronder zien.
Stop hier nu! Maak een lijst van de verschillen tussen hen.
Enkele van de verschillen die u misschien hebt genoemd, zijn misschien ras, leeftijd, grootte, kleur, enz. Als u even nadenkt, zijn deze verschillen ook enkele gemeenschappelijke kenmerken die door deze honden worden gedeeld. Deze kenmerken (ras, leeftijd, grootte, kleur) kunnen een gegevenslid voor uw object vormen.
Maak vervolgens een lijst van het algemene gedrag van deze honden, zoals slapen, zitten, eten, enz. Dit zullen dus de acties zijn van onze software-objecten.
Tot nu toe hebben we de volgende dingen gedefinieerd:
- Klasse - Honden
- Gegevensleden of objecten - grootte, leeftijd, kleur, ras, enz.
- Methoden - eten, slapen, zitten en rennen.
Nu, voor verschillende waarden van gegevensleden (rasgrootte, leeftijd en kleur) in de Java-klasse, krijgt u verschillende hondenobjecten.
U kunt elk programma ontwerpen met behulp van deze OOP-benadering.
Bij het aanmaken van een klas moet men de volgende principes volgen.
- Single Responsibility Principle (SRP) - Een klasse mag maar één reden hebben om te veranderen
- Open gesloten verantwoordelijkheid (OCP) - Het zou in staat moeten zijn om alle klassen uit te breiden zonder deze te wijzigen
- Liskov Vervangingsverantwoordelijkheid (LSR) - Afgeleide klassen moeten substitueerbaar zijn voor hun basisklassen
- Dependency Inversion Principle (DIP) - Afhankelijk van abstractie en niet van concreties
- Interface Segregation Principle (ISP) - Bereid fijnmazige interfaces voor die klantspecifiek zijn.
Klassen en objecten in Java-voorbeeldprogramma's
// 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());}}Uitgang:
Breed is: Maltese Size is:Small Age is:2 color is: white
Voorbeeld van Java-object en klasse: hoofd buiten klasse
In het vorige programma maken we de methode main () binnen de klasse. Nu maken we klassen en definiëren we de methode main () in een andere klasse. Dit is een betere manier dan de vorige.
// 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());}}
Uitgang:
Breed is: Maltese Size is:Small Age is:2 color is: white
Overzicht:
- Java Class is een entiteit die bepaalt hoe Java Objects zich zullen gedragen en welke objecten zullen bevatten
- Een Java-object is een op zichzelf staand onderdeel dat bestaat uit methoden en eigenschappen om bepaalde typen gegevens bruikbaar te maken
- Een klassensysteem stelt het programma in staat om een nieuwe klasse (afgeleide klasse) te definiëren in termen van een bestaande klasse (superklasse) door een techniek te gebruiken zoals overerving, overschrijving en vergroting.