1.面向对象思想
1.对比
- 面向过程:强调的是功能行为。
- 面向对象:关注是解决问题需要哪些对象。
- 面向对象是基于面向过程的。
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.回收
对象的垃圾回收:当没有任何一个指向该对象的引用时,
垃圾回收线程才会不定时的进行删除
来源:https://blog.csdn.net/qq_42326257/article/details/98764744