C++ and Java: A Comparative Study of the Most Popular Object-Oriented Programming Languages in Libyan Universities

  • Faiza Abdulsalam Mohammed Computer Science Department, Sirte University, Sirte, Libya
  • Nawara Makhzoum Alhassan Computer Science Department, Higher Institute of Science and Technology, Sirte, Libya
الكلمات المفتاحية: High-level ،, programming،, OOP،, Java،, inheritance،, comparative study،, C


The software has been experienced a large level of improvements by a lot of scientific researchers in this world. It can be considered as a set of some meaningful instructions written in a certain programming language. There are several programming languages which got comprehensive popularity like C, C++, C#, and Java. These languages are used to primarily evolve various applications. Object-Oriented Programming (OOP) languages, such as C++ and Java are one of the main three categories of programming languages. Most of the programmers always have a debate about choosing the best object-oriented programming language to help them develop their software applications. This review paper involves a comparison of C++ and Java with respect to some theoretical aspects to figure out the basic differences between them. Consequently, guide students to make a critical decision to choose the most applicable object-oriented programming language to develop their applications. The study has focused on both programming languages because they are taught in most of Libyan universities.


[1] M. Singh, H.S. Saluja, P. Talwar, and A. Kaur (2015) Comparison of OO programming languages, IJARCSSE, Volume 5, Issue 8, pp. 666-672.
[2] Z. Parveen and N. Fatima (2016) Performance comparison of most common high level programming languages, IJCAR, ISSN 2305-9184, Volume 5, Number 5, pp.246-258.
[3] R. Naim, M. F. Nizam, S. Hanamasagar, J. Noureddine, and M. Miladinova, Comparative studies of 10 programming languages within 10 diverse Criteria, a team 10 COMP6411-S10 Term Report.
[4] B. K. Bruce (2002) Foundations of object-oriented languages: Types and semantics”, Computer Science and Intelligent System, MIT Press.
[5] TIOBE programming community index for January 2022, available at http:// https://www.tiobe.com/tiobe-index/
[6] K.C. Chen (2004) Comparison of object-oriented and procedure-based computer languages: Case study of C++ programming, Issues in Information Systems, Volume V, No 1.
[7] L. F. Capretz (2003) A brief history of the object- oriented approach”, Software Engineering Notes vol 28 no 2.
[8] F. U. Onu, M. O. Ezeji (2016) Comparative Study of Structured and OOP Paradigms, International Journal of Advanced Research in Computer Science and Software Engineering, Volume 6, Issue 8.
[9] W.R. LaLonde, J. McGugan, and D. Thomas (1989) The real advantages of pure object-oriented systems or why object-oriented extensions to C are doomed to fail”, ." In Computer Software and Applications Conference, 1989. COMPSAC 89., Proceedings of the 13th Annual International, pp. 344-350. IEEE.
[10] B. Stroustrup (1995) Why C++ is not just an object-oriented programming language, addendum to OOPSLA95 Proceedings, ACM OOPS Messenger.
[11] P. Wegner (1990) Concepts and paradigms of object-oriented programming, ACM SIGPLAN OOPS Messenger 1.1: 7-87.
[12] E. Kindler,I. Krivy (2011) Object-oriented simulation of systems with sophisticated control, International Journal of General Systems: 313–343.

[13] L.K. Ferrett, and J. Offutt (2002) An empirical comparison of modularity of procedural and object-oriented software, Thirteenth International Conference on Engineering of Complex Computer Software, Annapolis, MD.
[14] A. Gupta, S. Chempath, M.J Sanborn, , l.a. Clark, and R.Q Snurr (2003) Object-oriented programming paradigms for molecular modeling”. Molecular Simulation, 29(1), 29-46.
[15] F. Albalooshi, and A. Mahmood (2017) A Comparative study on the effect of multiple Inheritance mechanism in Java, C++, and Python on Complexity and Reusability of Code, IJACSA, Vol. 8, No. 6.
[16] A. Shalloway, and J. R. Trott (2005) The Object-oriented paradigm”, Volume 2, Issue 3.
[17] K. Nørmark (2010) Object-oriented Programming in C# for C and Java programmers, Aalborg University, Denmark.
[18] S. Bjarne (2014) Programming: principles and practice using C++. Pearson Education.
[19] S. Bjarne (1991-2006) Evolving a language in and for the real world: C++.
[20] S. Bjarne (2015) Stroustrup: Thoughts on C++17- An Interview, Interviewed by Sergio De Simone.
[21] S. Bjarne (2013) The C++ Programming Language. 4th ed , ISBN 978-0-321-56384-2. QA76.73.C153 S77.
[22] S. Bjarne (2015) Lecture: The essence of C++. University of Edinburgh.
[23] ISO/IEC Programming Languages– C++11 Draft” (n3797) §3.7 Storage duration [basic.stc].
[24] G.Lo. Russo (2015) An Interview with A. Stepanov. stlport.org.
[25] Boost . The Boost library collection. http://www.boost.org/
[26] V. Dwarampudi, S.S Dhillon, J. Shah, N.J Sebastian, and N. Kanigicharla (2010) Comparative study of the pros and cons of programming languages Java, Scala, C++, Haskell, VB. NET, AspectJ, Perl, Ruby, PHP & Scheme-a” Team 11 COMP6411-S10 Term Report. arXiv preprint arXiv:1008.3431.
[27] K. Arnold, J. Gosling, and D. Holmes (2005) The Java programming language, Addison Wesley Professional.
[28] V. Kleber, A. Schulter, C. Westphall, and C. Westphall (2010) Intrusion detection techniques in grid and cloud computing environment, IT Professional, IEEE Computer Society 12, no. 4: 38-43.
[29] H. Chen (2010) Comparative study of C, C++, C# and Java programming languages, university of applied sciences, Degree Program of Information Technology.
[30] A. Snyder, “Encapsulation and inheritance in object-oriented programming languages”.
[31] P. S. Gondchawar (2015) Comparison between Object Oriented Programming Languages: Java and C++, International Journal of Advance Research in Computer Science and Management Studies, Volume 3, Issue 3.
[32] G.Lo. Russo (2015) An Interview with A. Stepanov, stlport.org.
[33] Z. Alomari, O. El Halimi, K. Sivaprasad, C. Pandit (2015) Comparative Studies of Six Programming Languages.
[34] O. B. Oyenike (2012) Comparative analysis of some programming languages”, Transnational Journal of Science and Technology, vol. 2, No. 5.
[35] G. Jindal, P. Khurana, T. Goel (2013) Comparative study of C, objective C, C++ programming language, International Journal Of Engineering And Computer Science ISSN:2319-7242, Volume 2 Issue 1, Page No. 202-206.
[36] R. Sharma, A.J. Singh, Pankaj Gupta (2016) Analytical Comparison of the Programming Languages, International Advanced Research Journal in Science, Engineering and Technology, Vol. 3, Issue 11.
[37] Ruchi Sharma, A.J Singh (2016) Comparative Study of the Programming Languages, International Journal of Advanced Research in Computer and Communication Engineering, Vol. 5, Issue 8.
[38] Mrs. Partibha, Mrs. Ashu Khokhar (2015) Comparative study of C, C++, C# and Java programming languages, International Journal of Enhanced Research in Management & Computer Applications, ISSN: 2319-7471, Vol. 4 Issue 6, pp: (7-12), Impact Factor: 1.296.
[39] K. Biswa, B. Jamatia, D. Choudhury, and P. Borah (2016) Comparative analysis of C, Fortran, C# and Java programming languages, Keshav Biswa et al, IJCSIT, Vol. 7 (2) , 1004-1007.
[40] A.M. Alnaser, O. AlHeyasat, A.A. Abu-Ein, H.M.Said, A.A. M. Sharadqeh (2012) Time comparing between Java and C++ software, Journal of Software Engineering and Applications, 5, pp 630-633.
[41] D. Wu, L. Chen, Y. Zhou, B. Xu (2015) A metrics-based comparative study on object-oriented programming languages, State Key Laboratory for Novel Software Technology at Nanjing University, Nanjing, China.
[42] P. Prajakta, A. Shweta, P. Priyanka, Prof. Ram Meghe (2018) C, C++ and JAVA: The Magic of Computer Programming Language, International Journal of Innovative Science and Research Technology, pp 151-153.