5 svar
47 visningar
KriAno 422
Postad: 2 sep 2020

Add field to class

Hej! 

Uppgiften är:

What would you have to do to add a new field, for example one called `name`, to
a `Circle` object?

Jag antar att de menar att man ska lägga till ett field till en klass och inte till ett redan skapat objekt, så att man kan skapa ett cirkel-objekt med ett name-field. 

Men hur gör man det? Går det ens?

Aerius 472
Postad: 2 sep 2020

Jag tror du har rätt i vad uppgiften menar. Tror frågan vill att man gör en subklass. Om man har en klass Circle. Då kan man göra en subklass till Circle som har ett name-field. Om det inte är det vet jag inte.

KriAno 422
Postad: 2 sep 2020
Aerius skrev:

Jag tror du har rätt i vad uppgiften menar. Tror frågan vill att man gör en subklass. Om man har en klass Circle. Då kan man göra en subklass till Circle som har ett name-field. Om det inte är det vet jag inte.

Ok tack! Så man kan inte ändra koden för klassen?

Aerius 472
Postad: 2 sep 2020

Om du har klass-filen så du kan öppna den i en editor kan du göra vilka ändringar du vill. Men du kanske inte har klassfilerna, utan bara byte-filerna (de kompilerade java-filerna), då går det inte att ändra i klassfilerna. Om du har klass-filen då kan du skriva en constructor som tar ett name-field. Det känns som constructor alternativet är rätt nu. Annars vet jag inte.

KriAno 422
Postad: 2 sep 2020
Aerius skrev:

Om du har klass-filen så du kan öppna den i en editor kan du göra vilka ändringar du vill. Men du kanske inte har klassfilerna, utan bara byte-filerna (de kompilerade java-filerna), då går det inte att ändra i klassfilerna. Om du har klass-filen då kan du skriva en constructor som tar ett name-field. Det känns som constructor alternativet är rätt nu. Annars vet jag inte.

Ok, men man kan göra en subklass till Circle som har ett name-field utan att ha klassfilerna?

Aerius 472
Postad: 3 sep 2020

Ja, det kan man göra. Ett sätt är arv, innebär att subklassen ärver klassen Circle. Ett annat sätt är komposition (composition), innebär att subklassen har ett Circle-field att använda när Circle metoderna behövs.

Svara Avbryt
Close