学习毕向东java第五天

学习毕向东java第五天


p63
讲了面向对象,不得不说毕老师说话实在是风趣幽默,举的例子也是简单易懂。
在我看来,面向对象就是,针对不同功能或者需求,来对专门的其中部分让一个对象来负责,即总功能拆分成子功能,总需求拆分成子需求,然后交给各个对象来实现

面向对象的三个特征:1.封装 2.继承 3.多态。
所以以后开发需要做的是:1.找对象(找不到就建立对象)2.使用对象 3.维护对象之间的关系
对象也是和数组一样,在堆内存中产生。
其实很多部分都是在回忆和总结学过的知识
Car c=new Car()
在堆中new一个对象,然后在栈中有一个c,并把堆中的内存地址给c

对象和类的关系:(其实对象就是类的具体实例)
https://www.cnblogs.com/rubinshao/p/4949029.html
一个不常见的名词:匿名对象
一般来说匿名对象就是 new Car().num=5;(即对对象中一个变量进行调整)
所以当对对象中的方法只调用一次的时候,用匿名对象比较简化,而若对其中变量进行多次调用时,则会导致每次在堆中都new一个不同对象,使得前面一个对象报废。

p67
封装:隐藏对象的属性和实现细节,仅对外提供公共访问部分,算是提高使用性吧,因为只需要关注公共访问部分。
主要是将对象中的变量封装起来(即外面访问不到)然后通过 get set的方法来对其操作,使之能被对外使用的同时,在方法中写判断语句,来选择能输入的数据在合理的范围以内。

总结就是:把一个对象私有化,但提供一些可以被外界访问该对象的方法。

p69
构造函数:对象一建立就会被调用,它与类名相同,但是没有返回值,所以就不需要写返回类型。
作用:是为了给对象初始化。即这就是为什么使用 new Car();(其中加一个括号)
且可以通过重载(方法名相同。内部参数类型或者参数数量不同)来创建多个。

p70
构造代码块
在对象一建立的时候就运行,而且优先于构造函数。

猜你喜欢

转载自blog.csdn.net/qq_41115379/article/details/87699186