正 文

利用UML类图设计Java应用程序详解(一)


www.7dspace.com  更新日期:2005-12-12 6:47:16  七度空间


五、BorderPrintCGrid类

BorderPrintCGrid类是PrintCGrid类的子类,它进一步扩展了CGrid类。它增加了生成类PrintCGrid对象的边界的变量和方法。类图见如下所示:

BorderPrintCGrid类有四个私有变量:useBorder、borderCharacter、horizEdge和 vertEdge。UseBorder是boolean类型的变量,它决定边界是否应该显示。BorderCharacter为用于显示边界的字符。 HorizEdge和vertEdge用于显示边界的水平和垂直边界的String对象。

BorderPrintCGrid类有两个。第一个构造函数没有参数。它调用PrintCGrid类的构造函数构造一个75字符宽20行高的网格,其边界字符为*。SetBorderDefaults()方法用于初始化BorderedPrintCGrid类的变量。第二个构造函数类似于第一个构造函数,但它提供了直接指定网格尺寸及边界字符的功能。

BorderPrintCGrid类提供4个访问方法。SetBorderDefaults()方法使用enableBorder()方法和 setBorderCharacter()方法初始化BorderedPrintCGrid类的变量。enableBorder()方法把 useBorder设置成true或false。setBorderCharacter()方法设置displayGrid()方法所用的 borderCharacter、horizEdge和vertEdge变量。

BorderedPrintCGrid类是PrintCGrid的子类,其类图关系表示为:

displayGrid()方法覆盖 PrintCGrid类的displayGrid()方法。通过重新定义该方法以满足自己的需要。其中的super语句,将调用PrintCGrid.displayGrid()。

该类的实现代码为:

// BorderedPrintCGrid.java
public class BorderedPrintCGrid extends PrintCGrid {

// Variable declarations
private boolean useBorder;
private char borderCharacter;
private String horizEdge;
private String vertEdge;

// Method declarations
public BorderedPrintCGrid() {
super(75,20);
setBorderDefaults('*');
}
public BorderedPrintCGrid(int x,int y,char ch) {
super(x,y);
setBorderDefaults(ch);
}
private void setBorderDefaults(char ch) {
useBorder = true;
setBorderCharacter(ch);
}
public void enableBorder(boolean toggle) {
useBorder = toggle;
}
public void setBorderCharacter(char ch) {
borderCharacter = ch;
char border[] = new char[width+2];
for(int i=0;i<width+2;++i) border[i] = borderCharacter;
horizEdge = new String(border);
vertEdge = String.valueOf(borderCharacter);
}
public void displayGrid() {
if(useBorder) {
System.out.println(horizEdge);
for(int i=0;i>depth;++i) {
System.out.print(vertEdge);
displayRow(i);
System.out.println(vertEdge);
}
System.out.println(horizEdge);
}else super.displayGrid();
}
}

7页,页码:[1] [2] [3] [4] [5] [6] [7] 

上一篇:给JAR签名
下一篇:利用UML类图设计Java应用程序详解(二)
作者:龚赤兵  来源:开发者在线 ( 责任编辑:7dspace )
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐