对象的属性和方法,是不是能理解为这个对象的一些方法,能做不同的事情。另一个对象的方法能做一些别的事情。这是大白话通俗能这样理解吗?
你要理解对象的属性和方法,就先要理解封装的概念
如果你还停留在搞单片机那种完全掌控过程的水平,那是没法理解为什么要封装的
当你的项目足够大,比如有10000行代码,还搞过程开发要累死的
你必须把不同的功能分开,不要都混在一个文件里面,这样便于排查错误,也利于维护
而不是改动了任何一个函数,都可能让整个文件变得不可用
-=-=-=
那么说完了为什么要封装,就要谈如何进行封装
首先是对数据进行封装
你不希望程序运行中所需要的所有数据全堆在一起,多了之后自己也不记得哪个变量是干什么的,就需要把它们封装进不同的类里
此时如果需要对数据进行一些处理,比如给定圆半径计算周长和面积,自然是把方法也封装在类里比较好
你也不希望时间长了,所有的类都和别的类互相牵扯,哪个也不能删掉吧
属性其实就是用来存数据的,而方法是用来处理数据的
-=-=-=
还有一种就是对方法进行封装
虽然类库里已经提供了很多方法,但是总有些方法是我们自己需要用而类库里没有提供的
如果你把所有方法都放到一个文件里,同样存在时间长了乱糟糟的一大堆不知道干什么用的问题
所以需要分门别类的放到不同的类里去,方便调用
而如果这些方法有些需要用到全局变量,那当然是把这些变量放到类里作为属性,而不是类外面的别的什么地方更好,否则时间长了又乱糟糟的
-=-=-=
总之,封装是为了解决问题
你抛开了实际问题而理解封装,
那就是为了封装而封装
那不是解决问题,是制造问题
对象的属性和方法,其实这句话本身就已经是很直白的话了。过多的解释反而会让你听的云里雾里
属性就是,一些值
方法就是,为了完成某些事情的办法
大白话理解点如下
1)兔子是一个对象
2)兔子有什么属性
兔子有耳朵、眼睛、脚等,这些就是兔子这个对象的属性
3)兔子能做什么
兔子能跑,能吃等,跑和吃这些是动作,可以看作方法,通过这些方法实现一些事情