Osaline klass on mõnes objektorienteeritud programmeerimiskeeles funktsioon, mis võimaldab klassi juurutamist mitme lähtekoodifaili vahel jagada. Osaklasse, mida nimetatakse ka osatüüpideks, ei eksisteeri paljudes programmeerimiskeeltes, eriti vanemates keeltes, nagu C++ ja Java. Iga keel, mis rakendab osaklasse, nagu C# ja Ruby, käsitleb juurutamist veidi erinevalt.
Üldiselt kasutavad osaklassid klassitükkide tähistamiseks märksõna “osaline” ja see, kas märksõna kirjutatakse suurtähtedega, sõltub kasutatavast programmeerimiskeelest. Klassi iga osa initsialiseeritakse samal viisil identsete klassideklaratsioonidega ja ilma nende “osaliste” märksõnadeta oleks ebaseaduslik luua mitut klassi sama nimega failidesse. Märksõna “osaline” käsib kompilaatoril või tõlgil olenevalt keelest ühendada kõik klassid üheks suureks üksuseks. Kõik klassi erinevad osad peavad olema sama nähtavad, olgu see siis avalik, privaatne või kaitstud. Kui klassi üks osa on määratud abstraktseks, määratakse ka liidetud klass abstraktseks, isegi kui ühtegi teist üksikut osa sellisena ei määratud.
Osalise klassi rakendamisel mitme faili vahel on mõned olulised eelised nii programmeerimisstiili kui ka korralduse osas. Osalised klassid võimaldavad seotud koodiosade selgesõnalist eraldamist spetsiifilisemateks rühmadeks. Lisaks võimaldab osaline klass mitmel programmeerijal töötada koodi teatud osadega, ilma et see võiks teisi häirida ja versioone kogemata üle kirjutada. Isegi üksikute programmeerijate jaoks võivad osaklassid olla kasulikud, kuna neid saab kasutada väga suurte klasside loomiseks, ilma et tekiks ka üks kohmakas fail, mida on raske korraldada ja läbi lugeda.
Osalise klassi rakendamise mustritel on ka mõned olulised puudused. Vaatamata sellele, et osaklassid on objektorienteeritud programmeerimise katuse all, rikuvad nad tegelikult objektorienteeritud programmeerimise jaoks olulisi kapseldamise põhimõtteid. Objektorienteeritud programmeerimises eeldatakse, et klass on üks ühtne üksus, millel on oma unikaalsed olekud ja käitumised, mis on iseseisev ja mida saab kasutada sidusüksusena. Osaklassid rikuvad seda ideed, kuna iga osaklass toimib nagu üks eraldi klass. Kuigi osalise klassi moodustavad osad liidetakse käitusajal üheks suureks klassiks, on osalise klassi tükid sageli iseseisvad üksused, mida saab kasutada eraldi, ilma et oleks vaja mingit liitmist.