Inom datavetenskap är en objekttyp varje objekt i ett datorprogram som kan ändras eller ändras på något sätt av datorprogrammet. Objekttyper är en underklass av datatyper. Datatyper hänvisar helt enkelt till den typ av information som representeras av varje objekt. En objekttyp har ofta en specifik uppsättning attribut som kan ändras till olika värden. I objektorienterad programmering hänvisar en objekttyp till ett specifikt objekt byggt från en klass – den uppsättning regler som fungerar som riktlinjer för att bygga nya objekt.
För att föreställa sig ett objekt är det bäst att föreställa sig att bygga ett hus. Datorprogrammeringsspråk, som Java eller C++, är verktygen som används för att bygga huset. En uppsättning regler och riktlinjer, ofta känd som en klass, visar vilka typer av hus som kan byggas från ett program. Objekttyper är som dessa metaforiska hus.
Om en programmerare vill bygga ett hus med två dörrar och två fönster kan han mata in dessa värden och skapa ett objekt. Det här nya objektet följer de regler som anges av sin klass, men tittar på datorprogrammets specifikationer för dess egenskaper som antal dörrar och fönster. En andra programmerare kan bygga ett objekt från samma klass men ställa in ett annat antal dörrar och fönster.
Husmetaforen översätts till datorprogrammerings virtuella värld eftersom en objekttyp måste följa vissa riktlinjer för att fungera, precis som ett hus måste monteras enligt en ritning. Objektorienterad programmering är starkt beroende av objekttyper för att skapa nya program samtidigt som den minsta mängden nödvändig kod används. Detta minskar risken för fel i koden och påskyndar processen att skapa ett program från början.
Att använda objekt i objektorienterad programmering har en klar fördel jämfört med andra programmeringstyper. Riktlinjerna för varje objekt är redan fastställda. Allt som programmeraren behöver göra är att bestämma vilken objekttyp han vill använda och sedan ställa in de speciella attribut som han vill att objekttypen ska ha.
Objekttyper är nyckeln till att få alla datorprogram att köra. Var och en har en specifik funktion, som att hämta data från en server eller reagera på input som användaren har skrivit, och att skapa flera objekt som fungerar tillsammans är det som får en mjukvara att köra. Datorprogrammeraren måste förstå hur objektet fungerar och vilka variabler som ska tilldelas det. Då kan programkoden köras bakom kulisserna samtidigt som användaren kan använda ett lättförståeligt gränssnitt för att interagera med programmet.