My understanding is that C++ is usually offered as the 1st OOP language, and as the 2nd programming language (after C) in my country (Bangladesh). I've taught it several times, and the problem I've run into is that students often tend to think C++ as an extension of C, i.e. C with
This has lead me to think about teaching Java as the first OOP language in the upcoming semester.
What is your opinion? I would like some suggestions from professional programmers as well as academics.