OOP'er Concepts in Java

ups koncepter i java

Hvad er OOPS?

Objektorienteret programmeringssystem (OOP'er) er et programmeringskoncept, der fungerer ud fra principperne om mavemusklertraction, indkapsling, arv og polymorfi. Det giver brugerne mulighed for at oprette objekter, de รธnsker, og skabe metoder til at hรฅndtere disse objekter. Det grundlรฆggende koncept bag OOP'er er at oprette objekter, genbruge dem i hele programmet og manipulere disse objekter for at fรฅ resultater.

OOP, der betyder "Objektorienteret programmering" er et populรฆrt kendt og udbredt begreb i moderne programmeringssprog som f.eks. Java.

OOP'er Concepts in Java med eksempler

Fรธlgende er generelle OOPs-begreber i Java:

1) Klasse

klasse er et af de grundlรฆggende begreber i OOP'er, som er en gruppe af lignende enheder. Det er kun en logisk komponent og ikke den fysiske enhed. Lad os forstรฅ denne ene af OOP'erne Concepts for eksempel, hvis du havde en klasse kaldet "Dyre biler", kunne den have objekter som Mercedes, BMW, Toyota osv. Dens egenskaber(data) kan vรฆre prisen eller hastigheden pรฅ disse biler. Mens metoderne kan udfรธres med disse biler, er kรธrsel, bakgear, bremsning osv.

2) Genstand

Et objekt kan defineres som en forekomst af en klasse, og der kan vรฆre flere forekomster af en klasse i et program. Et objekt er en af โ€‹โ€‹de Java OOPs koncepter, som bรฅde indeholder dataene og funktionen, som opererer pรฅ dataene. For eksempel โ€“ stol, cykel, tusch, kuglepen, bord, bil osv.

3) Arv

Arv er en af โ€‹โ€‹de grundlรฆggende Concepts af OOP'er, hvor et objekt erhverver egenskaberne og adfรฆrden for det overordnede objekt. Det skaber et forรฆldre-barn-forhold mellem to klasser. Det tilbyder en robust og naturlig mekanisme til organisering og struktur af enhver software.

4) Polymorfi

polymorfi henviser til et af OOPs begreber i Java som er en variabels, objekts eller funktions evne til at antage flere former. For eksempel pรฅ engelsk, verbet kรธre har en anden betydning, hvis du bruger det med en bรฆrbar computer, et fodlรธbog virksomhed. Her forstรฅr vi betydningen af kรธre baseret pรฅ de andre ord, der bruges sammen med det. Det samme gjaldt ogsรฅ for polymorfi.

5) Mavemusklertraction

Abstraction er en af โ€‹โ€‹OOP Concepts in Java som er en handling, der reprรฆsenterer vรฆsentlige funktioner uden at inkludere baggrundsdetaljer. Det er en teknik til at skabe en ny datatype, der er egnet til en specifik applikation. Lad os forstรฅ denne ene af OOP'erne Concepts for eksempel, mens du kรธrer en bil, behรธver du ikke at bekymre dig om dens interne funktion. Her skal du bare bekymre dig om dele som rat, gear, speeder osv.

6) Indkapsling

Indkapsling er en af โ€‹โ€‹de bedste Java OOP-koncepter for wrapping dataene og koden. I dette OOP-koncept er variablerne i en klasse altid skjult for andre klasser. Den kan kun tilgรฅs ved hjรฆlp af metoderne i den aktuelle klasse. For eksempel โ€“ i skolen kan en elev ikke eksistere uden en klasse.

7) Forening

Association er et forhold mellem to objekter. Det er en af โ€‹โ€‹OOP Concepts in Java som definerer diversiteten mellem objekter. I dette OOP-koncept har alle objekter deres separate livscyklus, og der er ingen ejer. For eksempel kan mange elever knytte sig til รฉn lรฆrer, mens รฉn elev ogsรฅ kan knytte sig til flere lรฆrere.

8) Aggregation

I denne teknik har alle objekter deres separate livscyklus. Der er dog ejerskab, sรฅledes at underordnet objekt ikke kan tilhรธre et andet overordnet objekt. Overvej f.eks. klasse/objektafdeling og lรฆrer. Her kan en enkelt lรฆrer ikke tilhรธre flere afdelinger, men selvom vi sletter afdelingen, vil lรฆrerobjektet aldrig blive รธdelagt.

9) Sammensรฆtning

Komposition er en specialiseret form for aggregation. Det kaldes ogsรฅ "dรธdsforhold". Underordnede objekter har ikke deres livscyklus, sรฅ nรฅr det overordnede objekt slettes, slettes alle underordnede objekter ogsรฅ automatisk. Til det, lad os tage et eksempel pรฅ Hus og vรฆrelser. Ethvert hus kan have flere rum. Et rum kan ikke blive en del af to forskellige huse. Sรฅ hvis du sletter vil huset ogsรฅ blive slettet.

Fordele ved OOP'er (objektorienteret programmeringssystem):

  • OOP'er Concepts in Java tilbyder let at forstรฅ og en klar modulรฆr struktur for programmer.
  • Objekter oprettet til objektorienterede programmer kan genbruges i andre programmer. Det sparer sรฅledes betydelige udviklingsomkostninger.
  • Store programmer er svรฆre at skrive, men hvis udviklings- og designteamet fรธlger OOPS-koncepter, sรฅ kan de designe bedre med et minimum af fejl.
  • Det forbedrer programmets modularitet, fordi hvert objekt eksisterer uafhรฆngigt.

Sammenligning af OOPS med andre programmeringsstile ved hjรฆlp af et eksempel

Lad os forstรฅ med eksempel hvordan Java OOP'er Concepts er anderledes end andre programmeringstilgange.

Programmeringssprog kan opdeles i 3 primรฆre typer

  1. Ustrukturerede programmeringssprog: Det mest primitive af alle programmeringssprog med sekventiel kontrol. Code gentages gennem hele programmet
  2. Strukturerede programmeringssprog: Har ikke-sekventielt flow af kontrol. Brug af funktioner giver mulighed for genbrug af kode.
  3. Objektorienterede programmeringssprog: Kombinerer data og handling sammen.

Klik link. hvis videoen ikke er tilgรฆngelig

Lad os forstรฅ disse 3 typer med et eksempel.

Antag, at du vil oprette en banksoftware med funktioner som f.eks

  1. Depositum
  2. Trรฆk
  3. Vis balance

Ustrukturerede programmeringssprog

Det tidligste af alle programmeringssprog var ustruktureret programmeringssprog. En meget elementรฆr kode for bankapplikation i ustruktureret programmeringssprog vil have to variabler af et kontonummer og et andet for kontosaldo

int account_number=20;
int account_balance=100;

Antag, at der indbetales 100 dollars.

account_balance=account_balance+100

Dernรฆst skal du vise kontosaldoen.

printf(โ€œAccount Number=%d,account_number)
printf(โ€œAccount Balance=%d,account_balance)

Nu er belรธbet pรฅ 50 dollars hรฆvet.

account_balance=account_balance-50

Igen skal du vise kontosaldoen.

printf(โ€œAccount Number=%d,account_number)
printf(โ€œAccount Balance=%d,account_balance)

Ustruktureret programmering

For enhver yderligere ind- eller udbetalingsoperation โ€“ du vil kode gentage de samme linjer igen og igen.

Struktureret programmering

Med ankomsten af โ€‹โ€‹struktureret programmering blev gentagne linjer pรฅ koden sat ind i strukturer sรฅsom funktioner eller metoder. Nรฅr det er nรธdvendigt, foretages et enkelt opkald til funktionen.

Struktureret programmering

Objektorienteret programmering

I vores program beskรฆftiger vi os med data eller udfรธrer specifikke operationer pรฅ dataene. Faktisk er det meget grundlรฆggende kendetegn i ethvert softwareprogram at have data og udfรธre visse operationer pรฅ disse data. Eksperter i softwareprogrammering tรฆnkte pรฅ at kombinere data og Operationer. Derfor fรธdslen af โ€‹โ€‹objektorienteret programmering, som almindeligvis kaldes OOPS. Den samme kode i objektorienterede programmeringssprog vil have de samme data og nogle handlinger udfรธrt pรฅ disse data.

Class Account{
    int account_number;
    int account_balance;
public void showdata(){
    system.out.println(โ€œAccount Numberโ€+account_number)
    System.out.println(โ€œAccount Balanceโ€+ account_balance)
}
}

Objektorienteret programmering

Ved at kombinere data og handling vil vi fรฅ mange fordele i forhold til strukturel programmering, dvs.

  • Abstraction
  • Indkapsling
  • Arv
  • polymorfi

De diskuteres mere detaljeret i efterfรธlgende selvstudier

Opsummer dette indlรฆg med: