zoukankan      html  css  js  c++  java
  • 不要迷失

    在整个开发过程中,最重要的事情就是:不要将自己迷失!但事实上这种事情很容易发生。大多数方法都设 计用来解决最大范围内的问题。当然,也存在一些特别困难的项目,需要作者付出更为艰辛的努力,或者付 出更大的代价。但是,大多数项目都是比较“常规”的,所以一般都能作出成功的分析与设计,而且只需用 到推荐的一小部分方法。但无论多么有限,某些形式的处理总是有益的,这可使整个项目的开发更加容易, 总比直接了当开始编码好! 也就是说,假如你正在考察一种特殊的方法,其中包含了大量细节,并推荐了许多步骤和文档,那么仍然很 难正确判断自己该在何时停止。时刻提醒自己注意以下几个问题: (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     }
  • 相关阅读:
    Netty实例
    八大排序算法Java实现
    在linux服务器上初步定位java接口耗时
    Manjaro 18.X 配置记录
    Linux下搭建ELK和初步使用
    ubuntu下docker简单安装rabbitmq
    Linux禁启用ping的方法
    ubuntu下docker简单安装mysql
    Ubuntu18优化桌面版的运行速度
    ubuntu下webpack初始化vue项目
  • 原文地址:https://www.cnblogs.com/borter/p/9438756.html
Copyright © 2011-2022 走看看