Я ещё подумал, провёл ряд тестов, посоветовался с компетентными людьми и решил написать сообщение, в котором выражу все свои мысли по этому поводу и по тексту, который написали форумчане.
1) bobrik ты не прав. У каждого на свою платформу имеется свой синтаксис, который обычно не совместим под другой платформой. Именно для стого совмещения используеются #ifndef, #ifdef и #define (директивы препроцессора, которые используются компилстором, а не языком).
2) fedukoff, в Жабе функции Math.min и Math.max в своём коде полностью повторсют мою запись, более того в С++, представлсешь, тоже есть такие функции, которые также идентичны моим.
3) iZEN, Java 6 (Mustang) чисто физически не может работать быстрее С++. По идее в ассемблере должно быть так вот чтобы интерпретировать байт-код нужно между каждой "жабовской" командрой процессора обрабатывать хоть одну команду интерпретатора. И как это будет работать на скоростсх близких к программе написанной на ассемблере.
4) A.I., Интерпретацис, всё таки, - это перевод какого-нибудь кода в машинный код, не важно как написанного (букавками или байт-кодом).
Закончу свою сказку таблицей сравнений (на этой программе):
N | M | Java | C++ | Java/C++
-----------------------------------
1000 1000 5 2 2.5
1500 1500 17.5 5 3.5
2000 2000 42 12 3.5
3000 3000 143 38 3.8
4000 4000 335 89 3.8
5000 5000 - 174 -
("-" -- Java не хватило памяти)
(тесты проводились на машине: AMD Athlon64 X2 4200+, 1GB RAM, GCC 3.4, Sun Java 1.5.1)