you can use code obfuscators to make the code more unreadible, but i'm not sure how much you'll gain here. somebody else can comment more on that
for performance, search google for "java performance tuning"
here are some basic performance considerations:
use later versions of java (they are fastest)
use the right garbage collection algorithm which best suits your app
object/resource pooling
use a profiler to expose which objects are taking the most resources and figure out ways to refine the app
etc...