ehem. pa visestruko nasledjivanje se pokazalo kao los koncept, i za tu svrhu su izmisljeni interfejsi. nema toga sto se ne moze uraditi kroz interfejse, a moze kroz visestruko programiranje, osim sto moze da glava manje boli, nego ako se koristi visestruko ;)
mislim da sam negde video da i u javi moze da se definise destruktor (valjda finalise() metod) ali ne tvrdim.
podrazumevani parametri funkcija samo stede mozda 2-3 linije koda koji se dobiju overloadovanjem metode i pozivanjem druge verzije sa default parametrima...
sto se weba tice, ako mislish da je java bolja od c++ za web zato sto ima JSP, onda je to glupost. ako mislish na druge tehnologije, mozda (nisam toliko strucan)..
proceduralno programiranje je starija tehnologija iz koje je nastalo objektno programiranje. u okviru op-a imash sve elemente proceduralnog programiranja.
prosledjivanje parametara funkciji po vrednosti nema mnogo smisla u jeziku u kome je sve objekat. (primitivi se ionako prosledjuju po vrednosti, mada mogu i da se wrapuju..).
java takodje ima svoje implementacije stack-a i heap-a, ali mi nije jasna primena koriscenja sistemskog stack-a i heap-a (ako si to mislio).
i da ne pominjem josh recimo RTTI (i Reflections) i bean-ove, i serializaciju, i RMI, i josh mLoge druge stvari koje java ima, a c++ nema, ili su losije uradjeni (da podsetim, ja josh javu ne poznajem dosta, i imam mnogo malo iskustva, ali napredujem ;)
btw, ako pih pomenuo da delphi takodje ima interfejse, pa propertije, pa josh neke stvari koje c++ nema, da li bi ga to cinilo superiornijim? pa ne bash. to bi samo govorilo o jeziku koji je (kao i java) nastao posle c++ i u kome su primenjene nove tehnike, i iz koga su izbacene tehnike koje nisu mnogo dobro prosle...
slicno, c# je nastao 5 godina posle jave, (i po uzoru na javu) tako da je sasvim logicno da ima neke nove tehnologije ukorporirane u sam jezik, a da ce java (slicno kao i c++) morati da ih dodaje na ne tako elegantne nacine, kroz nove biblioteke, ili kako vec..