Klasse vs Strukture
Sommige van die hoofkonsepte van objekgeoriënteerde (OO) programmeertale is inkapseling, oorerwing en polimorfisme. Klas en Struktuur is twee van die OO-konstrukte/nutsmiddels, wat programmeerders help om hierdie konsepte binne die meeste van die opwindende OO-programmeertale te bereik (Java verskaf nie strukture nie). Klasse is 'n abstrakte voorstelling van werklike wêreldobjekte. Strukture is baie soortgelyk aan klasse met 'n soortgelyke gebruik, maar het min beperkings in vergelyking met klasse. Beide klasse en struktuur word gebruik om soortgelyke tipe data saam te groepeer.
Wat is klasse?
Klasse beeld die abstrakte voorstelling van werklike wêreldobjekte uit, terwyl die verhoudings uitbeeld hoe elke klas met ander verbind is. Beide klasse en verwantskappe het eienskappe wat eienskappe genoem word. Metodes in die klasse verteenwoordig of definieer die gedrag van hierdie klasse. Metodes en eienskappe van klasse word die lede van die klas genoem. Tipies word inkapseling bereik deur die eienskappe privaat te maak, terwyl openbare metodes geskep word wat gebruik kan word om toegang tot daardie eienskappe te verkry. 'n Voorwerp is die geval van 'n klas. Oorerwing laat die gebruiker toe om klasse (genoem subklasse) uit ander klasse (genoem superklasse) uit te brei. Polimorfisme laat die programmeerder toe om 'n voorwerp van 'n klas te vervang in die plek van 'n voorwerp van sy superklas. Tipies word die selfstandige naamwoorde wat in die probleemdefinisie gevind word, direk klasse in die program. En insgelyks word werkwoorde metodes. Publiek, privaat en beskermd is die tipiese toegangswysigers wat vir klasse gebruik word. 'n Klasdiagram toon die stelsels se klasse, verwantskappe tussen klasse en hul eienskappe.
Wat is strukture?
Soos hierbo genoem, is strukture baie soortgelyk aan klasse met 'n soortgelyke gebruik, maar is effens beperkte vermoëns as klasse. Trouens, klasse kan beskou word as 'n uitbreiding tot strukture. Strukture is byvoorbeeld dieselfde as klasse in C++, maar hulle het by verstek publieke lede. 'n Struktuur kan deur die gebruiker gedefinieer word om 'n tipe wat saamgestel is voor te stel. Soortgelyk aan klasse, bevat strukture lede wat aan baie tipes kan behoort. Die sleutelwoordstruktuur word gebruik om 'n struktuur in C en C++ te definieer, terwyl die sleutelwoordstruktuur vir dieselfde gebruik word in. NET-programmeertale.
Wat is die verskil tussen klasse en strukture?
Selfs al is beide klasse en strukture soortgelyke konstrukte wat in programmeertale voorkom, het hulle subtiele verskille. Tipies is die klas 'n uitbreiding van die struktuur, en daarom het strukture 'n paar relatiewe beperkings. Strukture kan byvoorbeeld dieselfde as klasse in C++ beskou word, maar lede is nie by verstek publiek in klasse nie (anders as in strukture). Dit beteken eintlik dat jy 'n klas en 'n struktuur met presies dieselfde eienskappe kan definieer deur die toepaslike toegangswysigers in C++ te gebruik. In C kan strukture egter geen funksies of oorlaaide bewerkings bevat nie. Sleutelwoorde klas en struktuur word gebruik om onderskeidelik 'n klas en 'n struktuur in C++ te definieer. Wanneer dit kom by. NET-tale (C, VB. NET, ens.), is klas 'n verwysingstipe, terwyl struktuur 'n waardetipe is. En gewoonlik word strukture vir kleiner voorwerpe gebruik, maar klasse word gebruik vir groter voorwerpe wat vir langer tydperke in die geheue gehou word.