Java面向对象的引入

面向对象----就是一种编程的范式(一种套路—遇到问题的一种解决方案)
面向过程----关注一系列功能具体实现的细节,复用性不高
面向对象----把所有实现的细节整合到对象中,只要找到对象就能拿到对应的功能
面向对象基于面向过程,面向对象优于面向过程?
如果使用的场景越简单就优先采用面向过程,反之采用面向对象

类与对象之间的关系
对着一类事物进行抽取,把这类事物共有的特征抽取成属性,把共有的行为抽取成方法,把这一类事物抽取成类
类是对象的概括
对象是类的具体实现

构造方法
与类同名且没有返回值和类型修饰的方法用于创建对象以及属性的初始化。
如果类中没有构造方法JVM会自动添加无参构造方法
构造方法允许重载

在java中所有非静态的属性和方法都可以通过对象调用

this
关键字-----代表的是当前类的对象 可以指代类还没创建出来的对象。还可以指代当前类正在活动的对象
可以调用类中的属性和方法
this语句----只能在构造方法中去调用其他形式的构造方法 要在首行

构造代码块
在方法类内{}就是构造代码块,可以进行初始化,在每个构造方法前优先执行,调用任意的构造方法构造代码块都要执行

匿名对象
没有名称的对象–可以调用属性和方法,使用一次就创建一次,主要用于参数传递

局部代码块
在方法中{}—用于控制变量的生命周期,提高内存效率

成员变量和局部变量(在类内方法外非静态的属性和方法–成员变量,成员方法)
位置
成员变量:在方法外类内
局部变量:方法内或者代码块内
作用范围
成员范围:整个类
局部变量:方法或者代码块内
内存位置
成员变量:堆
局部变量:栈
生命周期
成员变量:随着类的对象的创建而产生,对象使用完成之后在某个特定时间进行回收
局部变量:随着方法的执行或者代码块的执行而产生,方法调用完成或者代码块执行完成就立即清除

猜你喜欢

转载自blog.csdn.net/weixin_44519263/article/details/88191733