面向对象: 并不是一个技术,而是一种编程的指导思想 以什么形式 组织代码 以什么思路 解决问题
类和对象
类的介绍
Java 中想要创建对象,必须先要有类的存在
类指的是一组相关属性和行为的集合,我们将其理解为是一张对象的设计图
类和对象的关系
Java 中需要根据类,创建对象
一个类,可以创建出多个对象
类的组成
属性:成员变量: 跟之前定义变量的格式一样 只不过位置需要放在 方法的外面
行为:成员方法: 跟之前定义方法的格式一样 只不过需要 去掉static关键字
创建对象和使用对象的格式:
创建对象:
类名 对象名 = new 类名();
变量的使用格式:
对象名.变量名;
方法的使用格式:
对象名.方法名(实际参数);
总结
打印对象名称,会看到对象的内存地址
对象中的变量称之为成员变量,存在默认初始化值
一个类,可以创建出多个对象,每个对象中的数据都是独立存在的
成员变量和局部变量的区别
区别 | 成员变量 | 局部变量 |
类中位置不同 | 方法外 | 方法中 |
初始化值不同 | 有默认初始化值 | 没有,使用之前需要完成赋值 |
内存位置不同 | 堆内存 | 栈内存 |
生命周期不同 | 随着对象的创建而存在,随着对象的消失而消失 | 随着方法的调用而存在,随着方法的运行结束而消失 |
作用域 | 在自己所归属的大括号中 |
this 关键字
当局部变量和成员变量出现了重名的情况, Java 使用的是 就近原则
this介绍
this 代表当前类对象的引用(地址)
构造方法
构造方法概述
构造器 :始化一个新建的对象 构建、创造对象的时候,所调用的方法
格式: 方法名与类名相同,大小写也要一致,没有返回值类型,连void都没有,没有具体的返回值(不能由return带回结果数据)
执行时机: 创建对象的时候调用,每创建一次对象,就会执行一次构造方法 不能手动调用构造方法
构造方法作用
本质作用:创建对象
结合构造方法执行时机:给对象中的属性(成员变量)进行初始化
构造方法注意事项
构造方法的创建:如果没有定义构造方法,系统将给出一个默认的无参数构造方法
如果定义了构造方法,系统将不再提供默认的构造方法
构造方法的重载:构造方法也是方法,允许重载关系出现
推荐的使用方式 无参数构造方法,和带参数构造方法,都自己手动给出
封装
面向对象三大特征:继承,封装,多态
封装:隐藏实现细节,仅对外暴露公共的访问方式
将属性抽取到类当中,这是对数据的一种封装
将代码抽取到方法中,这是对代码功能的一种封装
private 关键字
权限修饰符 private、 (defalut)、 protected 、public
被 private 修饰的成员,只能在本类当中进行访问
被 public 修饰的成员,代表权限最大,可在任意位置进行访问
标准 JavaBean
成员变量 :使用 private 修饰
构造方法:提供一个无参构造方法,提供一个带参的构造方法
成员方法: 提供每一个成员变量对应的 setXxx() / getXxx()