集册 Java实例教程 创建一个Point类和Rectangle类

创建一个Point类和Rectangle类

欢马劈雪     最近更新时间:2020-01-02 10:19:05

708
创建一个Point类和Rectangle类

class Point {

    public int x = 0;

    public int y = 0;/** from 时 代 J a v a - nowjava.com**/


    // a constructor!

    public Point(int a, int b) {

        x = a;

        y = b;

    }

}


 class Rectangle {

    public int width = 0;

    public int height = 0;

    public Point origin;


    // four constructors

    public Rectangle() {

        origin = new Point(0, 0);

    }/*来 自 nowjava.com - 时代Java*/


    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;

    }


    // a method for moving the rectangle

    public void move(int x, int y) {

        origin.x = x;

        origin.y = y;

    }


    // a method for computing the area of the rectangle

    public int getArea() {

        return width * height;

    }

}



public class CreateObjectDemo {


    public static void main(String[] args) {


        // Declare and create a point object and two rectangle objects.

        Point originOne = new Point(23, 94);

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

        Rectangle rectTwo = new Rectangle(50, 100);


        // display rectOne's width, height, and area

        System.out.println("Width of rectOne: " + rectOne.width);

        System.out.println("Height of rectOne: " + rectOne.height);

        System.out.println("Area of rectOne: " + rectOne.getArea());


        // set rectTwo's position

        rectTwo.origin = originOne;


        // display rectTwo's position

        System.out.println("X Position of rectTwo: " + rectTwo.origin.x);

        System.out.println("Y Position of rectTwo: " + rectTwo.origin.y);


        // move rectTwo and display its new position

        rectTwo.move(40, 72);

        System.out.println("X Position of rectTwo: " + rectTwo.origin.x);

        System.out.println("Y Position of rectTwo: " + rectTwo.origin.y);

    }

}


展开阅读全文