برنامه نویسی شیء گرا دارای 4 پایه یا مفهوم اساسی می باشد :
در واقع چنانچه به هر زبانی که برنامه می نویسید، این 4 پایه یا اصول را رعایت کنید، عملا در حال نوشتن یک برنامه ی شیء گرا هستید .
زبان های برنامه نویسی Multi Paradigm : زبان های برنامه نویسی ایی که امکان نوشتن برنامه های شیء گرا و همینطور ساختارگرا ( Procedural) را به شما می دهند . همچون C#
زبان های برنامه نویسی FullObjectOriented : زبان های برنامه نویسی ایی که از روش ساختارگرا پشتیبانی نمی کنند . همچون JAVA