Q:

Is there any technical reason why throughput would significantly differ between an Java application and a C++ application?

Given two applications, one written in Java and the second written in C++, is there any reason why they would have different network throughput? Both applications are fairly simple and identical in terms of functionality - they simply open a socket (let's say a UDP socket, for the sake of argument) and start writing the same data through.
It's safe to assume that both applications are running under the same conditions - same hardware, same operating system at both endpoints, same network, same configuration settings, and so forth. It's really as identical as you can possibly make it. It's also safe to assume that both have undergone similar optimization.
I can't think of a reason, but I might be overlooking something, perhaps in the way the JVM handles data traffic over networks or interacts with the operating system.
At this point, this question is mostly hypothetical. The applications don't exist - I'm just trying to determine if there's any performance-based reasons to consider one environment over the other.

A:

Most software won't be running on such a fast network (relative to CPU speed) that it will matter.  If you want to service thousands of clients simultaneously, you might see a small difference (assuming both implementations have appropriate amounts of tuning work done).

