什么是java的对象_什么是Java的类和对象

通常,面试过程中会涉及Java基础方面的问题,例如类、对象、变量、方法等。这要求求职者对基于面向对象编程(OOP)有一个深入的了解。

2.2.1 什么是Java的类和对象

面试例题5:Java的类和对象。

下列关于对象的哪一种说法是正确的?请选择正确的答案。

(a)对象是可以对其进行实例化从而得到类的东西。

(b)对象是类的实例。

(c)对象是一种蓝本,据此可以创建抽象的具体实现。

(d)对象是指向属性的引用。

(e)对象是一种变量。

考点:该面试例题考查求职者对于Java类和对象的理解。

出现频率:★★★

解析

1.类

在处理复杂事物的时候,用到的一种基本手段就是抽象。抽象的目的就是区别事物之间的本质和不同,面向对象编程(OOP)的实质就是利用类和对象来建立抽象模型。

类表示了对象的类别,是创建对象的蓝本。建立一个事物的抽象模型,本质上就是表达该事物的性质和行为。使用类来建立抽象模型,是通过在类中定义变量和方法来实现的。

类中定义的属性是一种可存储值的变量,该变量代表着事物的具体性质。类的对象所具有的行是由定义的方法来实现的。类中定义的变量和方法被称为类的成员。

在项目开发中,类一般可以通过UML建模来表示,如图2.1所示。

a4c26d1e5885305701be709a3d33442f.png

图2.1 类的

UML表示法

图2.1中,定义了类Gun的成员,即类Gun的变量和方法。从UML图中可以看到,类定义了如下所示的3个变量。

caliber:是一个Double类型的变量,该变量表示了Gun类所抽象事物(枪)的口径。

length:是一个Double类型的变量,该变量表示了Gun类所抽象事物(枪)的长度。

gun_type:是一个字符串类型的变量,该变量表示了Gun类所抽象事物(枪)的类型,例如是手枪还是突击步枪。

同时类中定义了如下所示的3个方法。

fire():定义了Gun的开火行为,即fire()方法。

maintenance():定义了Gun的维护方法。

Gun():定义了一个同类同名的构造方法。

开发者可以通过UML生成代码工具或者是手工在编辑器中建立图2.1中所示的类,如下所示:

public class Gun {

// 定义枪的口径

public Double caliber;

// 定义枪的长度

public Double length;

// 定义枪的类型

public int gun_type;

// 构造方法

public Gun() {

}

// 带参数的构造方法

public Gun(String name) {

}

// 开火的方法

public void fire() {

System.out.println(gun_type +" is fireing");

}

// 维护的方法

public Boolean maintenance() {

return true;

}

}

2.对象

对象是类的实例。对象在构造时以类为蓝本,创建对象的过程叫做实例化。对象是类所表示的抽象事物的具体实例。例如前面所讲述的Gun类,可以根据Gun类创建一个ak47的对象,即Gun的具体实现。

对象可以使用UML来表示,如图2.2所示。

a4c26d1e5885305701be709a3d33442f.png

图2.2 对象的UML表示法

ak47是根据Gun类创建的一个对象,在Java程序中,可以使用如下代码创建一个Gun对象。

……

public static void main(String[] args) {

//建立一个Gun类对象,即Gun类的实例ak47

Gun ak47=new Gun();

//定义ak47的口径

ak47.caliber=7.6;

//定义ak47的长度

ak47.length=57.8;

//定义ak47的类型

ak47.gun_type="AK47";

//调用fire()方法

ak47.fire();

}

……

运行该示例,结果如下:

AK47 is firing

答案:(b)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值