Java基础-使用第一个类

文章介绍了Java中类的使用,强调了类定义本身不执行代码,需要通过实例化(new关键字)来分配内存并执行方法。实例(对象)是调用方法的主体,通过对象可以访问和修改其内部数据。文中提到,直接访问实例变量不是最佳实践,应通过方法进行操作以增加安全性。
摘要由CSDN通过智能技术生成

使用第一个类

定义了类本身和定义了一个函数类似,本身不会做什么事情,不会分配内存,也不会执行代码。方法要执行需要被调用,而实例方法被调用,首先需要一个实例。实例也称为对象,我们可能会交替使用。下面的代码演示了如何使用:

public static void main(String[] args) {

    Point p = new Point();

    p.x = 2;

    p.y = 3;

    System.out.println(p.distance());

}

我们解释一下:

Point p = new Point();

这个语句包含了Point类型的变量声明和赋值,它可以分为两部分:

1 Point p;

2 p = new Point();

Point p声明了一个变量,这个变量叫p,是Point类型的。这个变量和数组变量是类似的,都有两块内存:一块存放实际内容,一块存放实际内容的位置。声明变量本身只会分配存放位置的内存空间,这块空间还没有指向任何实际内容。

因为这种变量和数组变量本身不存储数据,而只是存储实际内容的位置,它们也都称为引用类型

的变量。

p=new Point();创建了一个实例或对象,然后赋值给了Point类型的变量p,它至少做了两件事:

1)分配内存,以存储新对象的数据,对象数据包括这个对象的属性,具体包括其实例变量x和y。

2)给实例变量设置默认值,int类型默认值为0。

与方法内定义的局部变量不同,在创建对象的时候,所有的实例变量都会分配一个默认值,这与创建数组的时候是类似的,数值类型变量的默认值是0,boolean是false,char是“\u0000”,引用类型变量都是null。null是一个特殊的值,表示不指向任何对象。这些默认值可以修改,我们稍后介绍。

p.x = 2;

p.y = 3;

给对象的变量赋值,语法形式是:<对象变量名>.<成员名>。

System.out.println(p.distance());

调用实例方法distance,并输出结果,语法形式是:<对象变量名>.<方法名>。实例方法内对实例变量的操作,实际操作的就是p这个对象的数据。

我们在介绍基本类型的时候,先定义数据,然后赋值,最后是操作,自定义类型与此类似:

·Point p=new Point();是定义数据并设置默认值。

·p.x=2;p.y=3;是赋值。

·p.distance()是数据的操作。

可以看出,对实例变量和实例方法的访问都通过对象进行,通过对象来访问和操作其内部的数据是一种基本的面向对象思维。

本例中,我们通过对象直接操作了其内部数据x和y,这是一个不好的习惯,一般而言,不应该将实例变量声明为public,而只应该通过对象的方法对实例变量进行操作。

这也是为了减少误操作,直接访问变量没有办法进行参数检查和控制,而通过方法修改,可以在方法中进行检查。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值