为何说面向对象编程中类是静态的而对象是动态的

首先,面向对象程序设计本身的抽象程度还是比较高的,正因为有较高的抽象程度,所以理解面向对象编程要更复杂一些,面向对象编程涉及到很多概念,其中动态和静态就是两个比较大的内容。

要想理解动态和静态这两个概念,首先要从面向对象编程的过程出发,以Java语言为例,编程的过程可以总结为三个步骤,分别是类的定义、对象的创新和方法的调用。类的定义是编程的第一步,重点在于功能和属性的定义,由于类本身就是一个抽象的概念定义,所以类在程序运行的过程中并不会产生变化,这也是为什么把类称为“静态概念”的重要原因。

定义类的目的往往是基于类来完成对象的创建,相对于类来说,对象是执行功能的主体,而且同一个类可以构建出大量不同状态的对象,而且这些对象之间也可能会存在一定的关系(继承、多态等),所以对象往往是动态的。实际上,对于对象的理解是掌握面向对象编程的重点,对象的整个生命周期管理也能够体现出程序员的编程能力,比如通过各种容器(Container)来管理对象等等。

​站在设计的角度来说,类(包括接口)是设计的起点,而对象则是执行具体功能的实体,所以类可以比喻成“图纸”,而对象则是由图纸构建出来的实物,这就是类和对象之间的基本关系。从这个角度来看,对象虽然是动态的,但是对象的功能则是由类来赋予的,因此学习面向对象编程的一个重点就是如何设计类。

最后,要想全面了解面向对象编程,可以读一下这本书:

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言,或者私信我!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值