图1-2查看类的操作
-3-
我们要创建一个Staff对象,右键单击Staff图标(会弹出图1-2中显示的菜单)。这个菜单显示了两个构造函数可以用来构造Staff类。一个有参数,另外一个没有。首先,选择没有参数的构造函数。弹出的对话框应该如图1-3所示。这个对话框要求你输入一个被创建对象的名字。同时提供了一个缺省的名字(staff1),点击OK。一个Staff对象就会被创建。
图1-3创建无参数的Staff对象
一旦一个对象被创建,它会被放在窗口底部的对象槽里(如图1-4中下方红色的方块Staff1)。
图1-4一个Staff对象在对象槽中
-4-
(3)执行方法现在你已经创建了一个对象,可以执行它的公共(public)方法。用右键单击Staff1对象图标,就会弹出一个包含对象操作的菜单(图1-5左下方弹出菜单)。这个菜单显示了该对象所有可执行的方法和两个BlueJ环境提供的操作(查看对象和删除对象)。尝试执行其方法和操作,观察结果。
图1-5Staff对象的方法
(4)编辑一个类双击类图标可以打开代码编辑器。例如双击Staff类,找到getRoom方法的实现。该函数会返回该Staff对象的房间号。我们在这个函数返回值的前面加上一个“room”前缀(这样这个方法就会返回,“roomG.4.24”而不是“G.4.24”)。即:将returnroom;改为return“room”+room;(5)编译改变代码之后马上检查工程主窗口。你会发现Staff的图标出现了条纹。条纹的出现意味着类文件需要重新编译。在编辑器顶端的工具条包含一些经常使用的功能按钮,其中一个是Compile(编译)。可以使用这个按钮直接编译当前打开的类文件。现在点击Compile按钮。如果你没有犯任何错误,那么在编辑器最下方的消息区会出现一条消息(Classcompiled–nosyntaxerrors)提示这个类通过了编译检查。如果程序中有语法错误,错误行会高亮显示,并且在消息区(代码编辑窗口下方)会有相应的错误提示。(假设你第一次进行编译是没有出错,现在试着造成一个语法错误:比如漏写分号,然后再次编译,看看会出现什么效果?)编译错误
-5-
解析详见pile按钮,,如果在被编译的几个类中出现错误,编辑器就会被打开,错误位置和错误信息会显示出来。
【Task3】创建一个新工程(1)创建工程目录
要创建一个新的工程,从菜单中选择Project-NewProject……。然后自动打开一个文件选择对话框,对话框要求你为新工程确定一个名字和位置(注意不能与现有的重名!。输入名字并选择Create之后,将按照你提供的名字创建一个目录,)并且主窗口显示当前这个新建的空的工程。
(2)创建类
可以通过在工程工具条上点击NewClass按钮创建你的类。你要为这个类提供一个名字——这个名字必须是一个合法的Java标识符。可以一下四种不同类中选择:abstract、interface、Applet或者“standard”。这种选择将决定你的类将以何种初始的代码框架创建。你也可以通过编辑源代码修改类的类型(例如,把“abstract”关键字加入你的代码中)。在创建一个类之后,它在图中以一个图标表示,不同的颜色标识不同类型的类。例如,蓝色表示一般的类,浅蓝色表示抽象类,绿色表示接口。当你打开一个新类的编辑窗口时,会发现一个默认的类框架已经搭好了。默认框架代码是没有语法错误的,可以通过编译(但是它没有什么功能)。试着创建一些类并且编译它们。
(3)创建依赖关系
类框图以箭头显示框中各个类之间的依赖关系。继承关系(“extends”或者“implements”)被显示为实线箭头;“uses”关系被显示为虚线箭头。你既可以通过图形方式(直接在框图中)也可以通过在源代码中以文本方式添加依赖关系。如果你以图形方式添加了一个箭头,源文件也同时自动的更新了;如果你在源代码中添加了关系,框图也会自动更新。想以图形方式添加一个箭头,点击想要的箭头按钮(实线箭头是“extends”或者“implements”关系,虚线是“uses”关系)。添加一个继承箭头将在源文件中加入“extends”或者“implements”定义(依赖于目标是一个类还是一个接口)。添加一个“uses”箭头不会直接改变源代码(除非目标是在另一个包中的类。那样将会产生一个“import”语句,但是在我们的例子中是看不见的)。如果拥有一个“uses”箭头指向另一个类而在源代码中实际上没有用到这个类,稍后将会产生一个警告,告知程序员声明了对另一个类的“uses”关系但是这个类却没有用到。用文本方式添加箭头很容易:只需要像平常一样敲入代码即可。当代码被保存的时候,框图也更新了(记住:关闭文本编辑器将自动保存文本)。
-6-
(4)删除元素
想从框图中删除一个类,选中这个类并且从编辑菜单中选择“Remove”。你同样可以从这个类的右键弹出菜单中选择“Remove”。想删除一个箭头,从菜单中选择“Remove”并且选中你想删除的箭头。
【Task4】调试程序