Java Theory Questions