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 2025

Video: 4 Tips til at lære programmering 2025
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

Hvordan man skriver en check for en fremragende bill i QuickBooks Online - dummies

Hvordan man skriver en check for en fremragende bill i QuickBooks Online - dummies

Du kan Brug QuickBooks Online (QBO) Check vinduet til at skrive en check for at betale et faktura, du tidligere indtastede - noget, du ikke kan gøre i QuickBooks desktop produkt. Brug ikke Check-transaktionen, hvis du planlægger at betale flere regninger. Hvis du vælger en betalingsmodtager, for hvem der foreligger en udestående faktura, QBO ...

Sådan afskrives fakturaer med QuickBooks Online Accountant - dummies

Sådan afskrives fakturaer med QuickBooks Online Accountant - dummies

Vælger skrivefakturaer fra revisionsværktøjerne menuen i QBOA viser siden Skriv ud fakturaer, som giver dig mulighed for at se fakturaer, du måske vil afskrive, og derefter skrive dem til en konto efter eget valg. Øverst på siden indstiller du filtre for at få vist de fakturaer, du vil have ...

Importrevisorens ændringer til QuickBooks 2012 Datafil - dummies

Importrevisorens ændringer til QuickBooks 2012 Datafil - dummies

Din klient importerer de ændringer, som du ' har lavet i revisorens kopi af QuickBooks 2012-datafilen i hendes arbejdskopi af datafilen. For at gøre dette vælger klienten filen Arkiv → Revisorens Kopi → Klientaktiviteter → Kommandoen Import Revisorens Ændringer. QuickBooks viser dialogboksen Importer regnskabsførerens ændringer. For at bruge importkontoens ændringer ...

Valg af editor

Brug Flash med Nature Photography - dummies

Brug Flash med Nature Photography - dummies

Som regel afhænger du af naturlig belysning til naturfotografering. Du kan dog bruge flash-flash eller en ekstra flash-enhed til at øge naturlig belysning. On-flash-kamera De fleste digitale kameraer leveres med en flash på kameraet. Blitzenheden springer op, når det er nødvendigt. Du kan også aktivere flash på kameraet, når du skal tilføje en ...

Brug tredjeparts rå software til HDR fotografi - dummies

Brug tredjeparts rå software til HDR fotografi - dummies

Du kan købe eller downloade et væld af Råredigerere og konvertere fra tredjepart, der hjælper dig med at lave billeder med høj dynamisk rækkevidde. Hvis du er utilfreds med din nuværende software og vil prøve noget nyt, skal du hænde på en eller flere af de programmer, der er angivet i tabellen. Rå redaktører fra tredjepart Navn URL Platform (er) Freeware? ...

Brug dekorative accenter i mad stil og madfotografi - dummies

Brug dekorative accenter i mad stil og madfotografi - dummies

Når fødevaren alene ikke skaber Det drama eller den intrigue, du vil have i din fotografering med dekorative accenter - af farve, form eller tekstur - kan give dine billeder den ekstra effekt, du leder efter. Accenter er forbedringer af fødevarematerialet, og selvom de tjener formålet med at ophæve maden, er de ...

Valg af editor

Sådan finder du formatering i Word 2007 - dummies

Sådan finder du formatering i Word 2007 - dummies

Du kan bruge kommandoen Find til at skure dit Word 2007-dokument til formatering af oplysninger. Hvis du f.eks. Kun vil finde de forekomster af ordet, der ligger i fed skrift, kan du gøre det. Dette eksempel søger efter teksten gåseæg med en skriftstørrelse på 24 point i en ...

Hvordan man finder tekst i Word 2016 - dummies

Hvordan man finder tekst i Word 2016 - dummies

Ikke gider med båndet! For at finde tekst i dit Word 2016-dokument, tryk Ctrl + F, den mindeværdige tastaturgenvej til kommandoen Find. Du ser navigationsruden, svarende til hvad der vises her. Navigationsruden. Skriv den tekst, du vil lokalisere, i feltet Søg dokument. Når du skriver forekomster af teksten ...

Hvordan man finder stilarter i Word 2016 - dummies

Hvordan man finder stilarter i Word 2016 - dummies

Stilarter bor på Word 2016 Home-fanen navngivet Styles-gruppe, som vist her. Hvad du ser på båndet er Style Gallery, som kan udvides til en fuld menu med stilvalg. Hvor Word-stilarter lurer. Klik på dialogboksen launcher i det nederste højre hjørne af Styles-gruppen ...