Hjem Personlig finansiering Java Programmering: Oprettelse af en underklasse - dummier

Java Programmering: Oprettelse af en underklasse - dummier

Video: 4 Tips til at lære programmering 2024

Video: 4 Tips til at lære programmering 2024
Anonim

Når du skriver et objektorienteret program i Java, begynder du at tænke på dataene. Du skriver om konti. Så hvad er en konto? Du skriver kode til at håndtere klik med klik. Så hvad er en knap? Du skriver et program til at sende lønkontroller til medarbejdere. Hvad er en medarbejder?

I dette eksempel er en medarbejder en person med et navn og en jobtitel. Sikker på, medarbejderne har andre egenskaber, men holder sig nu til det grundlæggende. Koden i denne liste definerer, hvad det betyder at være en medarbejder.

importer statisk java. Lang. System. ud; offentlig klasse Medarbejder {privat String navn; Private String jobTitle; public void setName (String nameIn) {name = nameIn;} offentlig String getName () {returnavn;} offentlig tomgang setJobTitle (String jobTitleIn) {jobTitle = jobTitleIn;} offentlig String getJobTitle () {return jobTitle;} offentlig tomgangskontrol double amountPaid) {out. printf ("Betal til ordren af% s", navn); ud. printf ("(% s) *** $", jobTitle); ud. printf ("%,. 2fn", mængdePaid);}}

I listen er en medarbejderklasse defineret. Du kan bruge det, du definerer her, og udvide definitionen til at skabe nye, mere specialiserede klasser. Så i denne næste liste definerer du en ny klasse - en FullTimeEmployee klasse.

offentlig klasse FullTimeEmployee udvider Medarbejder {privat dobbelt ugentligSalar; privat dobbeltfordeling; offentlige ugyldige sætWeeklySalary (double weeklySalaryIn) {weeklySalary = weeklySalaryIn}} offentlige dobbelt getWeeklySalary () {return weeklySalary;} offentligt ugyldigt sætBenefitDeduction (double benefitDedIn) {benefitDeduction = benefitDedIn;} offentlige double getBenefitDeduction () {return benefitDeduction;} offentlige double findPaymentAmount) {retur ugentligSalariskydelseDuktion;}}

Når du ser på noteringen, kan du se, at hver forekomst af FullTimeEmployee-klassen har to felter: ugentligSalarisk og benefitDeduction. Men er de de eneste felter, som hver FullTimeEmployee-instans har? Nej det er de ikke.

Den første linje siger, at klassen FullTimeEmployee udvider den eksisterende medarbejderklasse. Det betyder, at hver FullTimeEmployee-instans udover at have en ugentlig Salgspris og en BenefitDuction også har to andre felter: navn og jobTitle. Disse to felter kommer fra definitionen af ​​medarbejderklassen, som du kan finde i den første liste.

I den anden fortegnelse strækker det magiske ord . Når en klasse udvider en eksisterende klasse, arver den udvidede klasse automatisk funktionalitet, der er defineret i den eksisterende klasse.Så, FullTimeEmployee klassen arver navn og jobTitle felter.

Klassen FullTimeEmployee erverver også alle de metoder, der er angivet i medarbejderklassen - setName, getName, setJobTitle, getJobTitle og cutCheck. FullTimeEmployee-klassen er en underklasse af medarbejderklassen.

Det betyder, at medarbejderklassen er superklasse i FullTimeEmployee-klassen. Du kan også tale i forhold til blodrelaterede. FullTimeEmployee-klassen er barnet af medarbejderklassen, og medarbejderklassen er forælder i klassen FullTimeEmployee.

Det er næsten (men ikke helt), som om klassen FullTimeEmployee blev defineret af koden i denne fortegnelse. Denne kode er falsk, men informativ.

importer statisk java. Lang. System. ud; offentlig klasse FullTimeEmployee {private String navn; Private String jobTitle; privat dobbelt ugentlig salat; privat dobbeltfordeling; public void setName (String nameIn) {name = nameIn;} offentlig String getName () {return name;} offentligt tomrum setJobTitle (String jobTitleIn) {jobTitle = jobTitleIn;} offentlig String getJobTitle () {return jobTitle;} public void setWeeklySalary double weeklySalaryIn) {weeklySalary = weeklySalaryIn;} offentlig dobbelt getWeeklySalary () {return weeklySalary;} offentlig tomgangssætningBenefitDeduction (double benefitDedIn) {benefitDeduction = benefitDedIn;} offentlige double getBenefitDeduction () {return benefitDeduction;} offentlige double findPaymentAmount () {return weeklySalary - benefitDeduction;} public void cutCheck (double amountPaid) {out. printf ("Betal til ordren af% s", navn); ud. printf ("(% s) *** $", jobTitle); ud. printf ("%,. 2fn", mængdePaid);}}

Hvorfor er denne liste falsk kode? Nå er den væsentligste forskel mellem denne fortegnelse og arvssituationen i de tidligere opførelser: Et børsklasse kan ikke direkte henvise til de private felter i sin forældersklasse. For at gøre noget med forældrenes private felter skal barneklassen ringe til forældrenes adgangsmetoder.

Tilbage i den anden fortegnelse ville kalde setName ("Rufus") være lovligt, men kodenavnet = "Rufus" ville ikke være. Hvis du tror på alt, hvad du læser i den sidste liste, tror du, at koden i FullTimeEmployee-klassen kan gøre navn = "Rufus". Nå, det kan det ikke.

Du har ikke brug for medarbejderen. java-fil på harddisken for at skrive kode, der udvider medarbejderklassen. Alt du behøver, er filen Medarbejder. klasse.

Java Programmering: Oprettelse af en underklasse - dummier

Valg af editor

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld fotoredigeringsfunktion tilbyder bundter af værktøjer, som du kan bruge at redigere dine billeder, fra korrektionsværktøjer til fastsættelse af farve og klarhed til filtre, lag og meget mere for at ændre eksisterende fotos eller skabe helt originale billeder fra bunden. Men alle disse værktøjer gør også Komplet fotoredigeringstilstand kompleks. Du kan flytte ind i ...

Generelle blandingsformer i Photoshop Elements - dummies

Generelle blandingsformer i Photoshop Elements - dummies

Elementer spænder over 25 blandingstilstande. Blend modes påvirker hvordan farver interagerer mellem lag og også hvordan farver interagerer, når du anvender maling på et lag. Ikke alene gør blandingstilstande interessante effekter, men du kan også nemt anvende, redigere eller fjerne blandingsfunktioner uden at røre dine billedpixel. De forskellige blandingstilstande ...

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriindstillinger hjælpe med at definere, hvordan dine figurer ser ud. Klik på nedpegepilen i værktøjsindstillingerne i Elements for at få adgang til de geometriske indstillinger, der beskrives i det følgende. Rektangulære og afrundede rektangel geometriske indstillinger Her er geometriske indstillinger for rektangel og afrundede rektangelformer: Ubegrænset: Giver dig mulighed for at få fri tøj til at tegne en ...

Valg af editor

Sådan bygger du tabeller i HTML5 - dummies

Sådan bygger du tabeller i HTML5 - dummies

Sommetider indeholder din webside data bedst fremlagt i et bord . Du kan bruge HTML5's komplette bordsystem til at oprette tabeller som den i dette eksempel: Den grundlæggende struktur i et bord i HTML-format er rimeligt let at forstå; Tjek koden, der oprettede tabellen i eksemplet:

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Der er situationer, hvor man kun vil en enkelt kopi af et baggrundsbillede på dit CSS3-websted. Det kan være, at billedet du har brugt er noget, der ikke gentager sig godt eller er stort nok til, at du virkelig ikke vil have det gentaget. Følgende procedure viser en teknik, du kan bruge til at fortælle ...

Hvordan man opbygger en webside skabelon fra scratch-dummies

Hvordan man opbygger en webside skabelon fra scratch-dummies

Standardværktøjet på tværs af digitalt agenturer og interne afdelinger til opbygning af website grafik er Adobe Photoshop. Selvom fyrværkeri er optimeret og målrettet til at producere web-grafiske kildefiler, er det bare ikke fanget, sandsynligvis på grund af den massive genoplæringsindsats ville det medføre, at hele afdelinger gør omskifteren. At oprette et nyt ...

Valg af editor

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Som flere og flere mennesker finder ud af din ny LinkedIn-gruppe, og som medlemmer begynder at deltage, kan du opleve, at nogle af de personer, der har klikket på linket for at deltage, ikke er på din forhåndsgodkendte liste. Måske er de mennesker, du ikke har forstået var på LinkedIn, eller du var ikke klar over, at de var gyldige grupper ...

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Ud over et profilbillede giver LinkedIn brugere mulighed for at forbedre de visuelle sociale markedsføringselementer i deres profiler ved at tilføje billeder til deres profilprofil. Du kan tilføje billeder til ethvert afsnit i din LinkedIn-profil. Tilføjelse af billeder til din profil kan hjælpe dig med at fortælle din historie visuelt og ...

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

, Når du har opfyldt kravene til oprettelse en virksomhedsside på LinkedIn, er det tid til at komme i gang ved at tilføje selskabets side til Linkedins system. For at oprette din virksomhedsside skal du blot følge disse trin: