不要迷失

在整个开发过程中,最重要的事情就是:不要将自己迷失!但事实上这种事情很容易发生。大多数方法都设 计用来解决最大范围内的问题。当然,也存在一些特别困难的项目,需要作者付出更为艰辛的努力,或者付 出更大的代价。但是,大多数项目都是比较“常规”的,所以一般都能作出成功的分析与设计,而且只需用 到推荐的一小部分方法。但无论多么有限,某些形式的处理总是有益的,这可使整个项目的开发更加容易, 总比直接了当开始编码好! 也就是说,假如你正在考察一种特殊的方法,其中包含了大量细节,并推荐了许多步骤和文档,那么仍然很 难正确判断自己该在何时停止。时刻提醒自己注意以下几个问题: (1) 对象是什么?(怎样将自己的项目分割成一系列单独的组件?) (2) 它们的接口是什么?(需要将什么消息发给每一个对象?) 在确定了对象和它们的接口后,便可着手编写一个程序。出于对多方面原因的考虑,可能还需要比这更多的 说明及文档,但要求掌握的资料绝对不能比这还少。 整个过程可划分为四个阶段,阶段 0刚刚开始采用某些形式的结构。

 1 package Com.TomTest;
 2 
 3 
 4 class Cubic {
 5        double getCubic(int n) {
 6           return 0;
 7        }
 8     }
 9     abstract class Sqrt{
10        public abstract double getSqrt(int x);
11     }
12     class Ass {
13         void f(Cubic cubic) {
14            double result=cubic.getCubic(3);
15            System.out.println(result);
16         } 
17     }
18     public class TomTest_36{
19       public static void main(String args[]){
20           Ass a=new Ass();
21           a.f(new Cubic(){                    //可以看做是Cubic类的子类
22                   double getCubic(int n) {    //重写了Cubic类的getCubic()方法
23                       return n*n*n;
24                   }
25                }
26              );
27          Sqrt ss=new Sqrt(){                     //可以看做是抽象类Sqrt的子类
28                  public double getSqrt(int x) {   //重写了抽象类Sqrt的getSqrt()方法
29                     return Math.sqrt(x);     
30                  }
31               };
32          double m=ss.getSqrt(5);   
33          System.out.println(m);
34        } 
35     }
原文地址:https://www.cnblogs.com/borter/p/9438756.html