技术开发 频道

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

    三、CGObject类

    CGObject类是抽象类的例子,它通过abstract方法来限制其子类的行为。Abstract方法必须由非abstract子类实现。其类图设计如下:

    CGObject类用于定义在网格上显示的对象的一般行为。它有两个变量:location和drawCharacter。Location变量的类型是Point,用于在网格上指定一个对象所在的点。DrawCharacter变量用于画对象的字符。

    CGObject有三个方法,而没有构造函数。因为abstract类没有完整定义,所以它没有构造函数,也没有对象实例。

    第一个方法addToGrid()不是abstract类型的。它以类PrintCGrid的对象作为参数,调用PrintCGrid类的addCGObject()方法,把this对象加到网格中。this关键字指当前对象。用addToGrid()方法调用CGObject类的子类的对象,这些对象加到类PrintCGrid的对象中。

    CGObject的其它两个方法都用abstract关键字声明。这意味着,这两个方法在能够由CGObject类的非abstract子类使用前必须被覆盖。覆盖方法必须拥有与anstract方法相同的名字、参数和返回值。Display()方法用于再网格上显示类PrintCGrid的一个对象。Describe()方法用于显示网格对象的描述。

    CGObject类的代码为:

0
相关文章