Ad esempio il C++ permette l'overloading degli operatori, per cui si possono ridefinire gli usuali operatori (+, -, *, ecc.) a seconda del tipo di dati su cui operano
Java tende ad essere pił ad alto livello di altri linguaggi simili (come il C++); questo comporta carenze in alcune caratteristiche come i tipi di dati specifici, puntatori alla memoria di basso livello e metodi di programmazione come il sovraccaricamento degli operatori