Java Logic