‫Welkom terug.
‫In de laatste video heb je de basis van abstract gezien, en daar wil ik je wat meer over laten zien.
‫Dus laten we doorgaan en een kubus maken.
‫En het wordt Ice Cube, schat, en het zal een vorm hebben als een kubus.
‫Oké, dus dit betekent ongeveer dat ik een kubus wil maken en dat het de vorm moet zijn waar we
‫momenteel naar kijken als een kubus.
‫Dus we gebruiken dit als een sleutelwoord om te zeggen dat ik het als een specifiek klassetype of als een
‫specifiek gegevenstype wil hebben.
‫Het datatype is Cube, en dat is een datatype dat we zelf hebben gemaakt.
‫Het is alsof je iets zegt.
‫Dus ik wil dit als een geheel getal hebben.
‫Maar in dit geval gebruiken we geen basis datatype zoals INT, maar een datatype dat we zelf hebben
‫aangemaakt.
‫Dus wat ik nu ga doen, is controleren of Ice Cube niet nul is, want als het nul is, dan is
‫het geen kubus.
‫Maar als het niet nul is, dan is het een kubus.
‫Dus dit betekent dat als het nu zo is, we gerust kunnen zeggen dat deze vorm geen kubus is, oké, omdat het gewoon niet werkte om dit toe
‫te voegen of in een kubus te plaatsen.
‫Want, nou, als het geen kubus is, dan zal het in ons geval waarschijnlijk sferoïde zijn.
‫Wat ik dan ook kan doen, is controleren of het van een bepaald type is, niet alleen door het dubbele isgelijkteken te gebruiken en nu
‫te gebruiken, maar ik kan ook controleren of de vorm van het type Kupe is.
‫En als dat het geval is, kan ik dat ook gerust zeggen.
‫Is hij buis?
‫Of deze vorm is een kubus.
‫Oké, dus we gebruikten het is de sleutel om te controleren of een variabele van een bepaald type is dat als trefwoord wordt gebruikt om een
‫variabele van een bepaald type te maken.
‫Het lukt echter niet altijd.
‫Oke.
‫Dus als we dit nu opnieuw doen, zullen we zien dat dit een vorm is of dat de vorm geen kubus is.
‫En dan zullen we zien dat dit een kubus is omdat een van hen een kubus is.
‫De andere is geen kubus.
‫Dus de eerste is een bol en er staat dat de vorm geen kubus is.
‫En de volgende is dat dit een kubus is.
‫En er staat dat de vorm een kubus is.
‫Oke.
‫Dus nu kunnen we zien dat dit echt werkte, dus we kunnen het echt controleren.
‫En in dit geval is het super dom, toch?
‫Omdat we het gewoon controleren om iets op de console te schrijven.
‫Maar in andere gevallen kan het juist relevant zijn voor jouw programma omdat je er dan iets mee kunt
‫doen.
‫Als het een kubus is, dan kun je er iets bijzonders mee doen.
‫Je kunt het berekenen of je kunt het aanpassen of je kunt het opslaan in een database of wat dan ook.
‫Als het iets anders is, dan zou je het anders aanpakken, oké?
‫Dus dat is wat je kunt doen.
‫Het is best cool.
‫Het is een onderdeel van polymorfisme dat we hier gebruiken.
‫Dat is best wel cool.
‫Zo zie je maar, heb je nog een andere functionaliteit die je kunt gebruiken?
‫Laten we nu zeggen dat we van een object naar een kubus willen casten.
‫Er is natuurlijk alleen werk als het object in feite een kubus bevat.
‫Oke.
‫Laten we dus een kubus maken.
‫Ik ga dit een kubus noemen.
‫En het wordt een kubus met een straal van zeven.
‫Oke.
‫Dus wat ik nu kan doen, is een nieuwe kubus maken en deze ene Kubus twee noemen, die
‫Kubus zal casten.
‫Een tot een kubus.
‫Dus wat betekent dat?
‫Het betekent dat ik een nieuwe kubus met de naam Kubus twee wil maken en dat ik Q één in een kubus wil gieten.
‫Dit werkt natuurlijk alleen als Q1 in feite een kubus is.
‫En nu weten we dat het een kubus is, maar dat komt omdat we het op deze manier hebben geprogrammeerd en het einde eigenlijk een
‫object is.
‫Het is dus een object dat een kubus bevat.
‫Dus object is de.
‫Klasse die hier vrijwel aanwezig is, ondersteunt alle klassen in die klassenhiërarchie en biedt service op
‫laag niveau aan afgeleide klassen.
‫Dit betekent dat elke afzonderlijke klasse erft van deze klasse genaamd object, elke klasse.
‫En dat is het geval.
‫En C Sharp, dat is ook het geval in Java en andere programmeertalen dan waarschijnlijk welke dan ook.
‫In Schotland is het bijvoorbeeld een sleutelwoord, wat ook hetzelfde soort concept is.
‫Rechts.
‫Dus deze objectklasse bevat zoiets als twee strings om te hashen.
‫En als je meer wilt weten, kun je dat ook eens bekijken.
‫Dus houd de controletoets vol en je kunt zien dat het gelijk is aan referentie is gelijk aan hash-code, krijg type twee
‫string.
‫Dit zijn dus de methoden die elk afzonderlijk object heeft, ook al heb je het niet geïmplementeerd.
‫Dat zie je dus heel snel door.
‫Dit gebruiken voor, laten we zeggen, onze vorm, dus hier.
‫Shape begint te stringen, je kunt zien dat het deze methode heeft, hetzelfde als shape dots gelijk zijn aan goede hash-code,
‫informatie krijgen, enzovoort.
‫Dus de meeste van die eigenschappen die we hier kunnen zien, hebben we niet geïmplementeerd, we hebben ze gewoon omdat
‫elke klasse erft van het object.
‫Oke.
‫Dus nu.
‫Laten we iets op de console schrijven met onze Cube twee die we hier hebben.
‫Dus, s. W. , en wat ik ga zeggen is dat het een volume heeft van en dan ga ik het gewoon doorgeven
‫of afdrukken.
‫Dus Kubus naar bovennaam en kubus naar dat volume.
‫Oke.
‫En dit werkt natuurlijk alleen maar.
‫Als het echt een Cuba is en in ons geval, dan zou het goed moeten werken.
‫Laten we het nu uitvoeren.
‫En we kunnen zien dat Cuba een volume heeft van driehonderd of driehonderddrieënveertig, dus dat is een kubus die we
‫hier hebben gemaakt, Kubus met zeven.
‫Oké, dus dat is het.
‫Nu heb je gezien hoe je abstracts kunt gebruiken, hoe je met abstracte klassen kunt werken,
‫dat wanneer je een abstracte klasse maakt, je natuurlijk abstracte methoden kunt creëren die je dan moet implementeren zodra
‫een klasse erft van deze klasse.
‫Dus eenmaal een klasse erft van vorm.
‫Oké, ik hoop dat je genoten hebt van deze video.
‫Dit is weer een van die video's waar ik feedback kreeg, mensen vroegen erom, dus besloot ik deze
‫specifieke video te maken.
‫En als je nog andere wensen of vragen hebt, laat het me weten.
‫En het vragengedeelte PORTEN-discours.