Learning Java...
Good luck, and enjoy the learning!
Maybe you could use these ponderings as a learning project? Code an object called Creature, and give it methods like "throw", "takeDamage", "bleed" etc. Then code an object Projectile, give it methods like "fly" and "hit", and a range of properties (like weight, blade width, blade sharpness etc). Now you can populate your world with a few creatures, giving them a variety of projectiles. So when a creature throws a projectile, it invokes the projectile fly method. Upon hitting a target the projectile invokes takeDamage of the target creature, and takeDamage method in itself performs various checks, sometimes yielding only a flesh wound, sometimes invoking bleeding. Add and tweak the values of all the variables to see how they play together.
Železný thrown 100 meters.
I'm not expert in this area, but somehow I'd guess modern sports equipment made of hi-tech materials don't fully compare to iron-age wooden spears and javelins. I'm not a big fan of sports, but I think I've sometimes seen it on TV, and I've seen they run and then throw the javelin, so that the javelin departure velocity is something like running speed + hand movement. These things are often a bit different in the game, I think.
(Also, the way the game works, it doesn't set any maximum distance for a thrown object. It just starts with the item weight, it's estimated atmospheric drag etc, and initial velocity and aim - and then just runs the simulation to see where the projectile will end. So, if we'd like to make javelins fly farther, we'd either need to decrease their weight, or increase the velocity. Personally, I feel that the velocity delivered by hand movement is now about correctly simulated in the game.)
Spears need more love.
If you have more detailed wishes in your mind, please tell. Preferably starting a new topic in the suggestions section, as that is where we return to browse new and old threads when needed.