1.面向对象的概述
(1)Java 类及类的成员:属性,方法,构造器,代码块,内部类
(2)面向对象额度三大特征:封装性,继承性,多态性,(抽象性)
2.面向对象与面向过程区别
(1)面向对象:强调的功能行为,以函数为最小单位,考虑怎么做
(2)面向对象:强调具备了功能对象,以类/对象为最小单位,考虑谁来做
3.面向对象三要素
(1)类:对一类事物的描述,是抽象的,概念上的定义
(2)对象:是实际存在的该事物的每个个体,因而称为实例
(3)对象由类派生出来的
4.设计类
(1)属性=成员变量=field=域,字段
(2)方法=成员方法=函数=method
5.类中属性的使用
(1)相同点:
定义变量的格式:数据类型 变量名=变量值
先声明后使用
变量都有其对应的作用域
(2)不同点:
在类中声明位置不同
属性:直接定义在类的一对{}内
局部变量:声明在方法内,方法形参,代码块内,构造器形参,构造器内部变量
关于权限修饰不同
属性:可以在声明属性时,指明其权限修饰符
常用的权限修饰符:private,public,protected
局部变量:不可以使用权限修饰
(3)默认初始值的情况
属性:类的属性,根据其类型,都有默认初始值
整型(byte,short,int,long)0
浮点型(double,float)0.0
字符型:0(或u0000)
布尔型(boolean)false
引用数据类型(类,数组,接口):null
局部变量:没有默认初始化值
意味着,我们在调用局部变量之前,一定要显式赋值
特别的,形参在调用时,我们赋值即可
(4)在内存中记载位置
属性:加载到堆空间中(非static)
局部变量:加载到栈空间中(方法中的形参是属于局部变量的)
局部变量:方法内变量,方法形参构造器,构造器形参,代码块内
(5)方法的声明
权限修饰符号 返回值类型方法名称(形参列表){方法体}
(6)权限修饰符号
Java规定的4种权限修饰符号:private,public,protected,缺省
(7)返回值类型:有返回值vs没有返回值
如果方法有返回值,则必须在方法声明时,指定返回值类型。同时方法中需要使用reture关键字返回指定类型的数据
如果方法没有返回值,则方法声明时,使用void表示。通常,没有返回值的方法中,就不需要使用return,但是,如果使用的话,只能“return;”表示此方法结束的意思
(8)方法名,属于标志符,遵循标识符的规则和规范
(9)类和对象的创建和执行操作三步
创建类
类的实例化
调用对象的结构:”对象.属性” ”对象.方法”
(10)对属性可以赋值的位置:
默认初始化
显示初始化/代码块初始化
构造器初始化
有了对象以后,可以通过”对象.属性”或”对象.方法”的方式,进行赋值
(11)jvm内存结构
编译源程序以后,生成一个或多个字节码文件
我们使用jvm中的类加载其和解释器对生成的字节码文件进行解释运行。意味着,需要将字节码文件对应的类加载到内存中,涉及到内存解析
6.方法
(1)理解万事万物皆对象
在java语言范畴中,我们都将功能,结构等封装到类中,通过类的实例化,来调用具体的功能结构
涉及到java语言与前端html,后端数据交互时,前后端的结构在java层面交互时,都体现为类,对象
对象体现在堆空间中
(2)方法的重载
定义:在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可
“两同一不同”:同一个类,相同方法名称。参数列表不同(参数个数不同,参数类型不同)
方法重载与权限修饰符,返回值类型,形参遍历名,方法体都没有关系
(3)可变形参的方法
可变参数的格式:数据类型……变量名
当调用可变个数形参的方法时,传入的参数个数可以是:0个,1个,2个,…
可变个数形参的方法与本类中的方法名相同,形参不同的方法之间构成重载
可变个数形参的方法与本类中的方法名相同,形参类型也相同的数组之间不构成重载。换句话说,二者不能兼容
可变个数形参在方法的形参中,必须声明在末尾
可变个数形参在方法的形参中,最多只能声明一个可变形参==
(4)方法参数的值传递机制(值传递机制)
如果变量是基本数据类型,此时赋值的是变量所保存的数据值
如果变量是引用数据类型,此时赋值的是变量所保存的数据地址值
String类的特殊
(5)递归方法
(6)关于变量赋值
如果变量是基本数据类型,此时赋值的是变量所保存的数据值
如果变量是引用数据类型,此时赋值的是变量所保存的数据地址值



