一切又从helloworld开始
到这节,就和Karel byebye了。为了快速、方便,引入了acm.jar这个东东。课上,教程里都没说太多关于这个东东的使用前的准备工作。在打谱(对着教程敲代码)时,似乎无从下手,helloworld怎么创建呢?
先看eclipse的Help菜单里的Tutorial,果然是从helloworld开始,细看,代码,不对啊,没用什么acm.program.*或是acm.graphics.*。放狗一搜,原来Tutorial用的标准Java代码。要像教程那样玩,必须导入acm.jar.
这样,就搜到了ACM Java Task Force(http://jtf.acm.org/),里面当然有详尽的说明咋用了(老外一贯的风格,文档n详细)。就开始按照JTF Tutorial来做。不曾想,运气不好,说要下载Hello.zip,nnd地址无效。ACM(听起来挺NX的),也有不靠谱的时候,咋办,总不能给麦兰发个邮件说传个acm.jar过来玩玩吧。
后来在Assignment 2里发现有acm.jar。OK
我是这样开始在eclipse里用acm.jar完成编程方法这门课的范例的:
1. Assignment 2已经把程序框架搭好了,直接输入代码,其他不用管。
2. 看看Tutorial,在Assignment 2里为每个程序创建一个class,当然也可以自己导入acm.jar的路径,按照创建工程,创建class那样去玩。
作业:
ch3的练习4,画个雪人。
代码:
1 /* File: SonwPerson.java
2 * ---------------------
3 * Draw a picture of snowperson.
4 */
5
6 import acm.graphics.*;
7 import acm.program.*;
8
9 public class SnowPerson extends GraphicsProgram {
10 public void run(){
11 // Top ball
12 add(new GOval(120, 20, 40, 40));
13 // Mid ball
14 add(new GOval(100, 60, 80, 80));
15 // Down ball
16 add(new GOval(85, 140, 110, 110));
17
18 // Inside of top ball
19 // eyes
20 add(new GOval(128, 30, 6, 6));
21 add(new GOval(146, 30, 6, 6));
22 // nose
23 add(new GLabel("V"),137, 45);
24 // mouth
25 add(new GOval(136, 47, 8, 8));
26
27 // Inside of mid ball
28 add(new GRect(137, 75, 8, 8));
29 add(new GRect(137, 100, 8, 8));
30 add(new GRect(137, 125, 8, 8));
31
32 }
33
34 }