Tärkein ero: Tyyppiluokkia on kaksi: Abstract Class ja Concrete Class. Näiden kahden tärkein ero johtuu niiden toimintamallien toteutuksen tasosta. Betoniluokat ovat tavallisia luokkia, joissa kaikki menetelmät on täysin toteutettu. Abstrakti luokka on juuri sen nimi. Siinä missä funktioita ei ole määritelty, eli ne ovat abstrakteja.

Tyyppiä on kaksi: Abstract Class ja Concrete Class. Näiden kahden tärkein ero johtuu niiden toimintamallien toteutuksen tasosta. Betoniluokat ovat tavallisia luokkia, joissa kaikki menetelmät on täysin toteutettu. Abstrakti luokka on juuri sen nimi. Siinä missä funktioita ei ole määritelty, eli ne ovat abstrakteja. Se on perusluokka. Kun abstrakti luokka on määritelty, se lakkaa olemasta abstrakti ja siitä tulee konkreettinen luokka. Konkreettinen luokka on se, missä jäsenfunktioiden toteutukset toteutetaan. Konkreettinen luokka on peräisin perusluokasta eli abstraktista luokasta.

Helpompi tapa miettiä olisi tarkastella esimerkkiä. Ajatelkaa urheilua, se on objekti, mutta sitä ei ole määritelty. Teknisesti urheilua ei ole. Se on vain muiden objektien luokittelu. Nämä esineet, kuten jalkapallo, baseball, koripallo, jääkiekko jne., Ovat määriteltyjä objekteja, jotka voidaan luokitella ja toteuttaa urheilussa. Näin ollen urheilu on abstrakti luokka, kun taas jalkapallo, baseball, koripallo ja jääkiekko ovat konkreettisia luokkia.
Tiivistelmäluokan ja betoniluokan vertailu:
Tiivistelmä luokka | Betoniluokka | |
Tyyppi | Perusluokka | Oletusluokka |
menetelmät | Voi sisältää osittain toteutettuja menetelmiä | Kaikki menetelmät toteutetaan täysin |
tehtävät | Jotkut tai kaikki ilmoitetut toiminnot ovat puhtaasti virtuaalisia | Ei puhtaasti virtuaalisia toimintoja |
instanssien | Ei voi avata | Voidaan päivittää |
Kuva Kohteliaisuus: tutorials.jenkov.com, stackoverflow.com