Peamised erinevused: Klassideks on kaks peamist tüüpi: Abstract Class ja Concrete Class. Nende kahe peamine erinevus tuleneb nende meetodite funktsioonide rakendamise tasemest. Betooniklassid on tavalised klassid, kus kõik meetodid on täielikult rakendatud. Abstraktne klass on täpselt see, mida tema nimi ütleb. See on koht, kus funktsioone ei ole määratletud, st need on abstraktsed.
Klassideks on kaks põhitüüpi: Abstract Class ja Concrete Class. Nende kahe peamine erinevus tuleneb nende meetodite funktsioonide rakendamise tasemest. Betooniklassid on tavalised klassid, kus kõik meetodid on täielikult rakendatud. Abstraktne klass on täpselt see, mida tema nimi ütleb. See on koht, kus funktsioone ei ole määratletud, st need on abstraktsed. See on põhiklass. Kui abstraktne klass on defineeritud, lakkab see olemast abstraktne ja muutub konkreetseks klassiks. Konkreetne klass on see, kus on tagatud liikmete funktsioonide rakendused. Konkreetne klass on tuletatud baasklassist, st abstraktsest klassist.
Lihtsam viis mõelda sellele oleks kaaluda näiteks. Mõelge spordile, see on objekt, kuid seda ei ole määratletud. Tehniliselt pole sellist asja nagu sport. See eksisteerib ainult teiste objektide kategooriatena. Need objektid, nagu jalgpall, pesapall, korvpall, jäähoki jne, on määratletud objektid, mida saab spordi raames liigitada ja rakendada. Seega on sport abstraktne klass, samas kui jalgpall, pesapall, korvpall ja jäähoki on konkreetsed klassid.
Abstraktse klassi ja betooniklassi võrdlus:
Abstraktne klass | Betooniklass | |
Tüüp | Alusklass | Vaikeklass |
Meetodid | Võib sisaldada osaliselt rakendatud meetodeid | Kõik meetodid on täielikult rakendatud |
Funktsioonid | Mõned või kõik deklareeritud funktsioonid on puhtalt virtuaalsed | Puuduvad puhtalt virtuaalsed funktsioonid |
Instantatsioon | Ei saa kiirendada | Võimaldab neid kohendada |
Pilt viisakalt: tutorials.jenkov.com, stackoverflow.com