Just nu i M3-nätverket
Jump to content

Liten arvshierarki


jarheim

Recommended Posts

Hallå, jag ska konstruera en liten arvshierarki som ska hantera de personer som finns på en utbildning.

 

1. en basklass med 2 attribut: private String namn & private String telefonNummer.

 

2. klassen ska ha två stycken konstruktorer, den första tar ett namn som inparameter, den andra tar emot bägge attributen. Det ska finnas en mutator som kan ändra telefonnummer.

 

3. sen behövs det två olika ärvande subklasser för att hålla reda på elever och lärare. (private int årskurs) (private String block) ska kompletteras med en åtkomstmetod och lämpliga konstruktorer.

 

 

public class ItProfil {

 

private String namn;

private String telefonNummer;

 

public ItProfil(String namn){

this.namn=namn;

 

}

 

public ItProfil (String namn, String telefonNummer){

this.namn=namn;

this.telefonNummer=telefonNummer;

}

 

public void bytNummer(String nyttNummer){

telefonNummer=nyttNummer;

}

 

public String visaNamn(){

return namn;

}

 

public String visaTelefonNummer(){

return telefonNummer;

 

}

}

 

class ItStudent extends ItProfil{

 

private int arsKurs;

 

public ItStudent(String namn, String telefonNummer, int arsKurs){

super(namn,telefonNummer);

this.arsKurs=arsKurs;

 

}

 

public int visaArsKurs(){

return arsKurs;

 

}

}

 

class ItLarare extends ItStudent{

private String block;

 

 

public ItLarare(String block, int arsKurs){

super(arsKurs);

this.block=block;

 

}

public String visaBlock(){

return block;

}

}

 

 

Vet inte om jag är helt ute och cyklar.. men men.. det går inte helt smärfritt när jag ska exekvera, då får jag felmeddelande:

 

"location: class ItStudent

super(arsKurs);

^

1 error "

 

Någon som vet vart felet ligger? om det är nån som har lust får ni gärna ändra i texten så det funkar ;)

 

Mycket tacksam för svar Mvh Jarheim

 

 

 

Link to comment
Share on other sites

KLassen ItStudent har ingen konstruktor som tar en "int" som enda argument.

 

super(arsKurs);

 

Den raden betyder att du vill anropa en konstruktor i förälderklassen (som tar en int som enda argument).

 

[inlägget ändrat 2006-10-01 20:52:01 av lizardKng]

Link to comment
Share on other sites

Sedan kan man också fråga sig om ItLarare verkligen ska ärva från ItStudent och inte från ItProfil.

 

Link to comment
Share on other sites

Ja det känns mer logiskt. Eventuells relationer mellan lärare och elever kan man ju uttrycka bättre på annat sätt.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...