bibliography java programming