2 svar
214 visningar
MayaWingårdh 47 – Fd. Medlem
Postad: 14 maj 2021 11:43

Varför skapa en ny klass här?

Jag förstår inte varför det behövs skapas en ny klass för den här metoden? Kan någon förklara! Man har tidigare sparat ner en buss passagerare i en vektor med deras ålder. 

public void print_sex()
		{
			//Betyg A
			//Denna metod är nödvändigtvis inte svårare än andra metoder men kräver att man skapar en klass för passagerare.
			//Skriv ut vilka positioner som har manliga respektive kvinnliga passagerare.
Lindehaven 820 – Lärare
Postad: 15 maj 2021 12:38

Detta är något av kärnan i objektorienterad programmering. Sådant som "hör ihop" eller är "typ likadant" hör till en viss klass.

En buss har en förare, ett antal sittplatser, ett antal ståplatser, o s v som hör till klassen Buss. En passagerare har ett namn, ålder, kön , o s v som hör till klassen Passagerare.

Ett bussbolag har ett antal bussar som representeras av lika många objekt av klassen Buss. Varje buss-objekt har olika antal passagerare vid olika tillfällen. Varje passagerar-objekt har (troligen) olika namn, ålder, kön, o s v.

För att dra nytta av fördelarna med objektorienterad programmering så behöver man skapa klasser som håller data (attribut) som "hör ihop". Metoderna i klassen gör något med attributen i den klassen - inte i andra klasser. Börjar man "fuska" med detta så leder det oundvikligen till problem senare.

MayaWingårdh 47 – Fd. Medlem
Postad: 16 maj 2021 20:34

Tack för bra förklaring! :) 

Svara
Close