یک شیء یا کلاس در حقیقت یک نوع داده است که داده ها و عملیات
روی داده ها را به صورت یک واحد یک پارچه کپسوله می کند. تا قبل از به وجود آمدن
برنامه نویسی شیء گرا داده ها و عملگرها (توابع) به صورت عناصر جدا از هم تصور می
شدند.
اگر مفهوم رکورد را در برنامه نویسی پاسکال درک کرده باشید، به
راحتی می توانید مفهوم شیء را نیز در یابید. رکورد، متشکل از فیلد هایی است
که هر فیلد محتوی داده می باشد و هر فیلد نوع داده ای خاص خود را دارد. رکورد ها
امکان دسترسی به مجموعه ای از عناصر مختلف داده ای را فراهم می
آورد.
اشیاء نیز مجموعه ای از عناصر داده ای هستند با این تفاوت که رکورد فقط
شامل عناصر داد های است اما شیء علاوه بر عناصر داده ای شامل توابع و روال ها نیز
می باشد که روی عناصر داده ای عمل می کنند. به این توابع و روال ها متد گفته می
شود.
عناصر داده ای یک شیء از طریق خواص آن شیء قابل دسترسی می باشند. خواص
اشیاء در دلفی دارای مقادیری می باشند که در زمان طراحی برنامه بدون نیاز به
نوشتن کد، قابل تغییر و تنظیم می باشند در صورتی که بخواهید در زمان اجرای برنامه،
خاصیتی از یک شیء را تغییر دهید کافی است کد بسیار کمی را بنویسید.
ترکیبی
از داده ها و کارآیی در یک واحد یک پارچه را کپسوله سازی می گویند. برنامه نویسی
شیء گرا علاوه بر کپسوله سازی ویژگی های نظیر چند شکلی بودن و وراثت را نیز شامل می
شود. در برنامه نویسی شیء گرا کلمه وارثت به این مفهوم است که اشیاء می توانند
قابلیت هایی را از اشیاء دیگر ( که به آن ها جدّ گفته می شود) به ارث ببرند و
آن قابلیت ها را تغییر دهند. همچنین کلمه چند شکلی بود در برنامه نویسی شیء گرا به
این مفهوم است که اشیای مختلف می توانند از یک جدّ منشعب مشود و در نتیجه از متدها
و خواص مشابه ای پشتیبانی می کنند که به این قابلیت، قابلیت مبادله نیز گفته می
شود.