add java base and design code