面向对象
类:是一组具有相同属性和行为的事物的集合,本质还是一种数据类型,类是抽象的
属性:事物的静态的特征
行为:事物的动态的特征(方法,动作)
区别:
- 面向过程:c语言,以方法为中心,主要是方法之间的调用
- 面向对象:更符合人类的思维习惯,以对象为中心,主要是对象之间的调用
对象: - 对象真实存的实体,对象是具体的,是类的具体体现(对象就是类的举例)
- 类是对象的抽象 对其他类在进行抽象就是抽象类
- 具体的事物,真是存在的实体,能描述出他的具体的属性
- 对象是 new + 构造方法()
toString()
我们想打印引用数据类型的时候,打印的是地址值,我们可以重写toString()方法,打印对象的属性值
封装
- 是面向对象的三大特征之一
- 隐藏对象的属性和实现细节:将我们的成员变量私有化,修饰符为private
- 仅对外提供公共访问修改方式:给我们成员变量提供公共访问方式 getxxx() satxxx()
- set属性():用来设置属性值的方法
- get属性():用来获取属性值得方法
补充:
既然封装是面向对象的三大特征之一,那么我们在使用的时候,就应该遵循一些规则(我们以后再写成员变量的时候,都要私有化,提供公共访问方式)
封装使用的步骤
1.成员变量私有化 private
2.提供公共访问方式 getxxx() satxxx()
访问修饰符
1.private:私有的,只能在本类中访问
2.default:默认的,只能在本包中访问
3.protected:受保护的,只能在本包中访问,子类可以访问
4.public:公共的,都可以访问
包:
本质就是一个文件夹,用来管理我们的类的,我们的类都要放在包里,我们某些相同功能的类,可以放在同一个包中
非访问修饰符
static:静态的,修饰成员变量和成员方法的。static修饰的成员变量和成员方法,不能直接调用非静态的成员变量和成员方法
final:最终的,修饰类,修饰成员变量,修饰成员方法
修饰类:不能被继承
修饰成员变量:不能被修改。只能赋值一次
修饰成员方法:不能被重写
今日作业:
- 创建卡车类,类中包含汽车的品牌、型号
售价、最大载重
封装汽车的各个属性 - 创建轿车类,类中包含汽车的品牌、型号.
售价、百公里油耗
封装汽车的各个属性 - 编写一个动物类
声明动物类的属性
声明动物类的方法
实例化一个动物,并给该动物添加属性,输出该动物的相关信息 - 编写一个人物类
声明人物类的属性
声明人物类的方法
实例化一个人物,并给该人物添加属性,输出该人物的相关信息
完成结果
- 未完成
- 完成