JAVA语言中的对象

在JAVA中,对象是类的一个实例.下面给出一个示例并分析:

 

//创建类Point,代表一个有着x座标和y座标的点
class Point {
    public int x = 0;
    public int y = 0;
	// 构造器
    public Point(int a, int b) {
		x = a;
		y = b;
    }
}

//创建类Rectangle,代表一个矩形
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;
    }

    // 移动矩形的方法
    public void move(int x, int y) {
		origin.x = x;
		origin.y = y;
    }
    // 计算矩形面积的方法
    public int getArea() {
		return width * height;
    }
}

//主类,含有main方法
public class CreateObjectDemo {
    public static void main(String[] args) {		
        //声明并创建一个座标点对象和两个矩形对象
        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);
    }
}


1.创建对象的语法:

    创建对象的语法由三部分组成:

    1).声明:赋值符号(=)左边的代码都是变量声明.如

        Point originOne = new Point(23, 94);

    2).实例化:

        关键字new用来创建一个新的对象;

    3).初始化:

        new运算符后面跟一个构造器的调用,由构造器来初始化新的对象.

 

2.构造器

    一个类可以有多个构造器,但是至少也要有一个.当有多个构造器的时候,JAVA虚拟机根据方法签名来区分.如上述的Rectangle类.

 

3.访问对象的元素:

    对象的元素包括字段、方法.

    3-1.字段:

    和C语言中struct引用内部成员一样.JAVA平台访问对象字段的形式如下:

    objectReference.fieldName

    如上述:

    System.out.println("rectOne的宽是: " + rectOne.width);

    3-2.方法:

    和C语言中struct引用内部成员一样.JAVA平台访问对象字段的形式如下:

    对象名称.方法名称(参数列表);

    如上述:

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

   

4.垃圾回收机制

    主要是JAVA运行环境会作出判断,对不再被引用的对象进行销毁的动作.这样做的好处是程序员不必对所创建的对象实现跟踪--当对象不再被引用时显式销毁,这样JAVA程序员就不会涉及到乏味的内存管理.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值