解决方案 »

  1.   

    设计原则:(重要)
    1.
    逻辑代码独立到单独的方法中,注重封装性--易读,易复用。
    不要在一个方法中,写下上百行的逻辑代码。把各小逻辑代码独立出来,写于其它方法中,易读其可重复调用。
    2.
    写类,写方法,写功能时,应考虑其移植性,复用性:防止一次性代码!
    是否可以拿到其它同类事物中应该?是否可以拿到其它系统中应该?
    3.
    熟练运用继承的思想:
    找出应用中相同之处,且不容易发生变化的东西,把它们抽取到抽象类中,让子类去继承它们;
    继承的思想,也方便将自己的逻辑建立于别人的成果之上。如ImageField extends JTextField;
    熟练运用接口的思想:
    找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
    把很简单的东西搞得那么复杂,一次性代码,设计模式优势的实例说明:(策略模式)
    说明:
    模拟鸭子游戏的应用程序,要求:游戏中会出现各种颜色外形的鸭子,一边游泳戏水,一边呱呱叫。第一种方法:(一次性代码)
    直接编写出各种鸭子的类:MallardDuck//野鸭,RedheadDuck//红头鸭,各类有三个方法:
    quack():叫的方法
    swim():游水的方法
    display():外形的方法第二种方法:运用继承的特性,将其中共同的部分提升出来,避免重复编程。
    即:设计一个鸭子的超类(Superclass),并让各种鸭子继承这个超类。
    public class Duck{
         public void quack(){  //呱呱叫
                  System.out.println("呱呱叫");
          }
         public void swim(){   //游泳
                System.out.println(" 游泳");
          }   
         public  abstratact void display();
    }对于它的子类只需简单的继承就可以了,并实现自己的display()方法。
    //野鸭
     public class MallardDuck extends Duck{
         public void display(){
              System.out.println("野鸭的颜色...");
       }
     }
    //红头鸭
     public class RedheadDuck extends Duck{
         public void display(){
              System.out.println("红头鸭的颜色...");
       }
    }