Downloads: 176 | Views: 231 | Weekly Hits: ⮙1 | Monthly Hits: ⮙1
Survey Paper | Computer Science & Engineering | Malaysia | Volume 8 Issue 1, January 2019
Semantic Analysis of Object-Oriented Programming Languages: Survey
Abdulkadir Abubakar Bichi | Abdulrauf Garba Sharifai | Saud Adam Abdulkadir 
Abstract: Object-oriented programming (OOP) is a programming paradigm that uses a special data structure called objects which encapsulate the data fields and procedures together with their interactions for writing a computer programs. This paper is a survey of ten (10) Object oriented programming languages: C++, C#, Java, Modula, Delphi, Ada, Eiffel, VB. Net, Python and Smalltalk. The work involved a comparative semantic analysis of the ten programming languages with respect to the following criteria: support of inheritance, encapsulation, operations and method overloading among others. Smalltalk and Eiffel are pure OOP languages but Eiffel is more powerful in terms of inheritance since it supports both single and multiple inheritance and support class variable/method. C++ and Java are hybrid languages; they support most of the OOP features but not all. However, Java has higher degree of objectivity since it supports total objectivity of user defined and have a good technique for garbage collection, C++ also has many powerful features like operation and method overloading, flexibility in binding and multiple inheritance support, though difficult to use and prone to errors, it is powerful and complex at the same time. Python can also be consider as hybrid since it lack the feature of total object of operation message but has higher degree of objectivity compare to both C++ and Java. C# is like an improved version of C++ that solve many complications of the later language. C# behaves similar to Java but support of more features like method overloading.
Keywords: Data Type, Inheritance and Polymorphism
Edition: Volume 8 Issue 1, January 2019,
Pages: 2136 - 2139