类与对象的形象解释

背景:
Java 是一种面向对象的程序设计,基本原则就是在考虑程序设计的时候力图按照人们思维方式简历问题的模型,以对象世界的思维方法来思考和解决问题。为此面向对象技术引入对象来表现事物和传递信息建立事物之间的联系。

一、对象
在面向对象程序设计中,对象是相关变量和方法的软件集,是可以保存状态和一组操作的(行为)的整体。在我们现实生活中对象有两个最基本的特征包括:状态和行为。举个简单的例子,一辆自行车的状态包括:颜色、、款式、轮子大小、价格等等。它的行为包括:刹车、加速减速等操作。这是非常容易理解的,那么我们对应到面向对象程序设计中,那么这个对象的一个或者多个变量就可以表示它的状态,而它的方法(可以理解成函数)就表示它的一系列动作。

二、类
类其实是对某种具有共同特征类型的一类对象的定义,也就是说类定义了一系列对象的集合。而这些类的对象就具有相同的变量和方法。再举一个简单点的例子,自行车可以看作是一个类,而每一个实实在的自行车就是这个类的对象。这些对象都有相同的状态:颜色、价格等,都用相同的方法动作:刹车、提速等。

三、类的成员
前面我们知道,在定义一个类的时候,我们通常是用变量来表示类的属性,这个属性就是类的一部分,也就是我们的成员变量。而表现一个类的行为的过程,我们称之为成员方法。其实成员变量又可以分成两类:实例变量和类变量。实例变量在每次创建一个类的变量时都会为实例变量创建存储空间,而类变量是不管创建了多少对象只分配一次存储空间。类方法也可以分为:实例方法和类方法。实例方法可以对实例变量进行操作而且可以访问类变量,而类方法只能操作类变量,但是不能访问定义在类中的实例变量,除非创建一个行的对象通过对象进行访问实例变量,还可以通过类名直接调用类方法就不用重新建立实例来调用。

四、抽象类
所谓抽象类就是没有具体的对象的概念类,这种类需要在class 前添加修饰符abstract修饰。举个最简单的例子,什么是“鸟”?是不是感觉很抽象,因为没有实实在在的一个鸟这样的东西,即便是看到的也都是鸟类。那么什么是“燕子”呢?那么你一定会描述成,具有什么什么特征的鸟,是不是就能比较形象的描述出来了呢。其实这里可以和上面联系起来理解,鸟就是一个抽象类,没有实例,而燕子和麻雀就是衍生于鸟这个抽象类的非抽象类,燕子作为一个非抽象类,实实在在看的见的每一只燕子就是燕子类的具体对象,而对象的状态(属性)就是燕子的颜色、外观等,对象的动作(方法)就是飞、叫等行为。这是不是就能很好理解了呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值