6.3.2 对象的使用
对象的使用包括引用对象的成员变量和方法,通过运算符 • 可以实现对变量的访问和方法的调用,变量和方法可以通过设定一定的访问权限来允许或禁止其它对象对的访问 。 我 们 先 定 义 一 个 类 Point,它 在 例 6.5的 定 义 中 添 加 了 一 些 内 容 。
例6.6
class Point{
int x,y;
String name = "a point";
Point()
{
x = 0;
y = 0;
}
Point( int x, int y, String name )
{
this.x = x;
this.y = y;
this.name = name;
}
int getX()
{
return x;
}
int getY()
{
return y;
}
void move( int newX, int newY )
{
x = newX;
y = newY;
}
Point newPoint( String name )
{
Point newP = new Point( -x, -y, name );
return newP;
}
boolean equal( int x, int y )
{
if( this.x==x && this.y==y )
return true;
else
return false;
}
void print()
{
System.out.println(name+" : x = "+x+" y = "+y);
}
public static void main( String args[] ){
Point p = new Point();
p.print();
p.move(50,50);
System.out.println("** after moving **");
System.out.println("Get x and y directly");
System.out.println("x = "+p.x+" y = "+p.y);
System.out.println("or Get x and y by calling method");
System.out.println ("x = "+p.getY()+" y = "+p.getY());
if( p.equal(50,50) )
System.out.println("I like this point!!!! ");
else
System.out.println("I hate it!!!!! ");
p.newPoint( "a new point" ).print();
new Point( 10, 15, "another new point" ).print();
}
}
运行结果为:
C:\java UsingObject
a point : x = 0 y = 0
**** after moving *****
Get x and y directly
x = 50 y = 50
or Get x and y by calling method
x = 50 y = 50
I like this point!!!!
a new point : x = -50 y = -50
another new point : x = 10 y = 15
1. 引用对象的变量
要访问对象的某个变量,其格式为:
objectReference.variable
其中objectReference是对象的一个引用,它可以是一个已生成的对象,也可以是能够生成对 象引用的表达式 。
例如 :我们用Point p=new Point();生成了类Point的对象p后,可以用p.x,p.y来访问该点的 x、 y坐标,如
p.x = 10; p.y = 20;
或者用new生成对象的引用,然后直接访问,如 :
tx = new point().x;
2. 调用对象的方法
要调用对象的某个方法,其格式为 :
objectReference.methodName ( [paramlist] );
例 如 我 们 要 移 动 类 Point的 对 象 p,可 以 用
p.move(30,20);虽然我们可以直接访问对象的变量 p.x、p.y来改变点 p的坐标,但 是 通 过 方 法 调 用 的 方 式来实现能更好地体现面向对象的特点,建议在可能的情况下尽可能使用方法调用。同样,也可以用new生成对象的引用,然后直接调用它的方法,如
new point(). move (30,20);
前面已经讲过,在对象的方法执行完后,通常会返回指定类型的值,我们可以合法地使 用这个值,如:例6.6中类Point的方法equal返回布尔值,我们可以用它来作为判断条件分别执行 不同的分支。 如 :
if (p.equal (20,30)){
…… //statements when equal
}else {
…… //statements when unequal
}
另外,类Point的方法newPoint返回该点关于原点的对称点,返回值也是一个Point类型, 我们 可以访问它的变量或调用它的方法,如 :
px = p.newPoint().x 或
px = p.newPoint(). getX();
2017年计算机二级考试java章节辅导:对象的使用.doc正在阅读:
2017年计算机二级考试java章节辅导:对象的使用10-30
我的老妈作文500字08-03
小米小钢炮蓝牙音箱没声音怎么办06-12
2020年湖南益阳中考成绩查询时间:7月30日起【附查分入口】11-29
2019兴业银行贵州贵阳分行社会招聘02-16
二年级小学生每日课外好句摘抄09-07
拯救地球作文550字10-04
税务师考试试题《税法二》每日一练:车船税(04.24)12-01
高三生入团志愿书范文600字02-28