面向对象

拥有回忆 提交于 2019-11-26 07:54:50

1.面向对象思想

1.对比

  1. 面向过程:强调的是功能行为。
  2. 面向对象:关注是解决问题需要哪些对象。
  3. 面向对象是基于面向过程的。

2.好处

1: 面向对象思维方式是一种更符合人们思考习惯的思想

2: 面向过程体现的是执行者,面向对象中更多的体现是指挥者。

3: 面向对象思维方式将复杂的问题简单化。

2.局部变量和成员变量的关系

区别一:内存位置不同

​ 成员变量存储在对内存的对象中

​ 局部变量存储在栈内存的方法中

区别二:声明周期不同

​ 成员变量随着对象的出现而出现在堆中,随着对象的消失而从堆中消失

​ 局部变量随着方法的运行而出现在栈中,随着方法的弹栈而消失

区别三:初始化不同

​ 成员变量因为在堆内存中,所有默认的初始化值

​ 局部变量没有默认的初始化值,必须手动的给其赋值才可以使用。

3.封装思想

1.体现

1.方法就是一个最基本封装体

2.类其实也是一个封装体

2.好处

1.提高了代码的复用性

2.隐藏了实现细节,还要对外提供可以访问的方式。

3.提高了安全性

4.对象

1.创建方式

new,反序列化,反射,clone

详细:new操作符,首先去看new操作符后面的类型,因为知道了类型,才能知道要分配多大的内存空间。分配完内存之后,再调用构造函数,填充对象的各个域,这一步叫做对象的初始化,构造方法返回后,一个对象创建完毕,可以把他的引用(地址)发布到外部,在外部就可以使用这个引用操纵这个对象。

2.分类

1.自定义:如person

2.系统:如string

3.特殊:如数组,匿名对象

匿名对象:创建一个对象只用一次,用完就算了,
创建匿名对象 new person(); 没有任何引用指向,用完即可等待回收。

3.注意

1.一个类型一旦创建出来,就是一个数据类型,任何地方都可以使用

2.字节码文件也就是一个对象,即.class

3.null可以为任意种类的对象,虽然是空的

4.回收

对象的垃圾回收:当没有任何一个指向该对象的引用时,
垃圾回收线程才会不定时的进行删除

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!