配套视频教程
本文B站配套视频教程
软件出现的目的
为什么使用面向对象
世界由对象组成
面向对象的思想 描述 面向对象的世界 符合人类思维习惯
从现实中抽象出类分三步:
- 找出它的种类
- 找出它的属性
- 找出它的行为
用面向对象描述世界
- 品种
- 年龄
- 昵称
- 健康情况
- 跟主人的亲密度
… …
只放和业务相关的属性
- 跑
- 吠
- 输出自己的信息
… …
只放和业务相关的方法
使用类图描述类
实践
实现领养宠物功能
编写宠物类Dog和Penguin
创建宠物对象,输入领养的宠物信息并输出
对象初始化
能否在创建对象的同时就完成赋值?
构造方法
系统提供默认无参构造方法
自定义构造方法
系统不再提供默认无参构造方法
this关键字是对一java基础封装视频个对象的默认引用,这里用以区分同名成员变量
方法重载
调用重载方法
一个例子
找出下面代码的问题
static静态成员
一个例子 统计对象被创建出来的个数
4:static特点
1 随着类的加载而加载,静态会随着类的加载而加载,随着类的消失而消失。说明它的生命周期很长。
2 优先于对象存在。—>静态是先存在,对象是后存在。
3 被所有实例(对象)所共享。
4 可以直接被类名调用
使用static定义方法
用类名调用: Person.print();
静态方法只能访问静态属性,不能访问实例属性
找错误
封装
Dog d = new Dog();
d.health = -1000;
属性随意访问,不合理的赋值
封装的概念
封装:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问
封装的好处
1.隐藏类的实现细节
2.只能通过规定方法访问数据
3.方便加入控制语句
4.方便修改实现
封装的步骤
this
用类名定义一个变量(对象,实例)的时候,定义的只是一个引用,外面可以通过这个引用来访问这个类里面的属性和方法。
那么类里面是够也应该有一个引用来访问自己的属性和方法呢?
一个类中定义两个构造函数,在一个构造函数中通过 this 这个引用来调用另一个构造函数
练习
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/3538.html