·最基本的声明方法

1.创建一个项目

2.创建一个包javabasic15

·编码分析

1.创建public class Point，一个点类，表示平面上的一个点。2个属性x，y分别表示点的x坐标和y坐标。同时添加一个构造方法public Point(int a, int b)

public class Point {

public int x = 0;

public int y = 0;

public Point(int a, int b) {

x = a;

y = b;

}

}

2.创建public class Rectangle，一个矩形类

3.为Rectangle类添加3个属性public int width = 0，public int height = 0，public Point origin，分别表示矩形的长度，宽度和顶点坐标，这3个属性就可以确定一个矩形。

4.为Rectangle类定义4个构造方法：

public Rectangle()，设置origin=new Point(0,0)

public Rectangle(Point p)，设置origin=p

public Rectangle(int w, int h)，设置origin=new Point(0,0)，w和h分别赋值给width和height

public Rectangle(Point p, int w, int h)，参数分别赋值给origin，width和height

5.为Rectangle类添加2个公共方法

public void move(int x, int y)，移动矩形，即设置origin点坐标为x,y

public int getArea()，获取矩形的面积，即return width * height

public class Rectangle {

public int width = 0;

public int height = 0;

public Point origin;

// 四个构造器

public Rectangle() {

origin = new Point(0, 0);

}

public Rectangle(Point p) {

origin = p;

}

public Rectangle(int w, int h) {

origin = new Point(0, 0);

width = w;

height = h;

}

public Rectangle(Point p, int w, int h) {

origin = p;

width = w;

height = h;

}

// 移动 rectangle

public void move(int x, int y) {

origin.x = x;

origin.y = y;

}

// 计算 rectangle 的面积

public int getArea() {

return width * height;

}

}

·创建public class JavaBasic15，并添加main()方法来测试我们刚才建立的这2个类

1.声明并创建一个Point对象originOne，两个rectangle对象rectOne和rectTwo

2.显示rectOne的高度、宽和面积

3.设置rectTwo的位置，即rectTwo.origin = originOne

4.显示rectTwo的位置，即输出rectTwo顶点origin的xy坐标

5.移动rectTwo，即rectTwo.move(40, 72)，并显示它的新位置

public class JavaBasic15 {

public static void main(String[] args) {

//声明创建一个 Point 对象，两个 rectangle 对象

Point originOne = new Point(23, 94);

Rectangle rectOne = new Rectangle(originOne, 100, 200);

Rectangle rectTwo = new Rectangle(50, 100);

//显示 rectOne 的高度、宽和面积

System.out.println("rectOne 的宽: " +

rectOne.width);

System.out.println("rectOne 的高度: " +

rectOne.height);

System.out.println("rectOne 的面积: " + rectOne.getArea());

//设置 rectTwo 的位置

rectTwo.origin = originOne;

//显示 rectTwo 的位置

System.out.println("rectTwo 的 x 坐标: "

+ rectTwo.origin.x);

System.out.println("rectTwo 的 y 坐标: "

+ rectTwo.origin.y);

//移动 rectTwo 并显示它的新位置

rectTwo.move(40, 72);

System.out.println("rectTwo 的 x 坐标: "

+ rectTwo.origin.x);

System.out.println("rectTwo 的 y 坐标: "

+ rectTwo.origin.y);

}

}