java设计思路