现在进入的正是你可能最感兴趣的阶段。由于手头上有一个计划——无论它有多 么简要,而且在正式编码前掌握了正确的设计结构,所以会发现接下去的工作比一开始就埋头写程序要简单 得多。而这正是我们想达到的目的。让代码做到我们想做的事情,这是所有程序项目最终的目标。但切不要 急功冒进,否则只有得不偿失。根据我的经验,最后先拿出一套较为全面的方案,使其尽可能设想周全,能 满足尽可能多的要求。给我的感觉,编程更象一门艺术,不能只是作为技术活来看待。所有付出最终都会得 到回报。作为真正的程序员,这并非可有可无的一种素质。全面的思考、周密的准备、良好的构造不仅使程 序更易构建与调试,也使其更易理解和维护,而那正是一套软件赢利的必要条件。 构建好系统,并令其运行起来后,必须进行实际检验,以前做的那些需求分析和系统规格便可派上用场了。 全面地考察自己的程序,确定提出的所有要求均已满足。现在一切似乎都该结束了?是吗?
1 package Com.TomTest; 2 3 4 import java.lang.reflect.*; 5 class Rect { 6 double width, height, area, circumference; 7 Rect() { 8 } 9 Rect(double w, double h) { 10 width = w; 11 height = h; 12 } 13 public double getArea() { 14 area = height * width; 15 return area; 16 } 17 public double getCircumferenceLength() { 18 circumference = 2 * (height + width); 19 return area; 20 } 21 } 22 public class TomTest_40 { 23 public static void main(String args[]) { 24 Rect rect = new Rect(); 25 Class cs = rect.getClass(); 26 String className = cs.getName(); 27 Constructor[] con = cs.getDeclaredConstructors(); 28 Field[] field = cs.getDeclaredFields(); 29 Method[] method = cs.getDeclaredMethods(); 30 System.out.println("类的名字:" + className); 31 System.out.println("类中有如下的成员变量:"); 32 for (int i = 0; i < field.length; i++) { 33 System.out.println(field[i].toString()); 34 } 35 System.out.println("类中有如下的方法:"); 36 for (int i = 0; i < method.length; i++) { 37 System.out.println(method[i].toString()); 38 } 39 System.out.println("类中有如下的构造方法:"); 40 for (int i = 0; i < con.length; i++) { 41 System.out.println(con[i].toString()); 42 } 43 } 44 }