admin 管理员组文章数量: 894082
昕鲜事
类、对象
- 类:有公共属性和方法的事物的一种抽象(即可以抽象出来为一类)
不能确定到具体的某个对象就是类别
大类中又有子类(根据不同的属性和方法划分)
属性对应特征 方法对应行为
属性是名词 方法是动宾结构
- 对象: 类的实例化 能确定到具体的实例就是某一个对象,特征不同对象不同(即有特有的特征)
类与类之间的关系 类与对象之间的从属关系
分析过程:
1.系统中有哪些功能(方法)和变量 把这些东西经过分析分解成对象
2.分析这些对象 将具有相同属性和方法的对象抽象出类
3.针对这些类 根据有相同属性和方法的类抽出父类 一般定义为抽象类
4.根据不同的类中有某个相同属性和方法抽象出接口
Eg:
接口:不同父类(商品类和音乐类)中有公共的属性和方法
父类:商品类 :子类中公共的属性和方法 音乐类:子类中公共的属性和方法
商品的子类: 音乐的子类:
电视 :特有的属性和方法 流行:特有的属性和方法
冰箱 :特有的属性和方法 经典:特有的属性和方法
Ps:要把属性和方法进行封装
特征:体现在封装 继承 多态
目的:软件功能的扩展 解决需求变更的问题
可扩展(不改变原有的基础上,增加新的功能) 可复用
| 在类中的位置不同 | 在内存中的位置不同 | 生命周期不同 | 初始化值不同 |
成员变量(全局使用) | 类中方法外 | 堆内存(存放临时数据、随时消失随时处理) | 随着对象的存在而存在,随着对象的消失而消失 | 有默认的初始值 整型默认值0 引用型默认值空
|
局部变量(只能在局部使用) | 方法内或者方法声明上 | 栈内存(存放引用数据、当所有引用数据消失,由垃圾处理器清理) | 随着方法的调用而存在,随着方法的调用完毕而消失 | 没有默认的初始化值,必须先定义赋值后才能使用 |
Tips:使用范围只能在最接近的大括号里定义的才有用
Tips:
查找 属于歌曲库中有歌曲列表的属性 进行显示列表的功能
听歌 属于播放器有播放的功能
其中代码执行的顺序如下:
静态变量初始化→静态代码块→初始化静态方法→初始化实例变量→代码块→构造方法
Static静态 (代表全局可以使用) | Final 常量(只能使用 不能改变) |
可以通过类名直接调用该类的静态方法 | 修饰数据:不会改变的值 3个地方可以赋值:直接赋值、构造函数中,或是初始化块中 |
静态方法不能访问非静态的实例变量和实例方法 | |
静态方法必须用static关键字修饰 | 修饰方法:修饰方法的作用是把方法锁定,以防止任何继承类修改它的含义。也就是说final修饰的方法不能被重写。 |
静态方法不能使用this 关键字和super关键字,因为这两个关键字与特定的实例相关 | |
实例方法可以访问静态成员和非静态成员 | 修饰类 表示不能继承和被继承。 |
Static方法独立于任何实例,因此static方法必须被实现,而不能是抽象的abstract |
Final static 一起使用:
对于成员变量:一旦赋值不能改变 称全局常量 可以通过类名直接访问
对于成员方法:不可继承和改变 可以通过类名直接访问。
enum枚举:
枚举类型其实是整型,它的作用一是让数值看起来更直观
二是圈定一个范围,是数值被限定在这个范围中.
也就是说某一组值做限定,一般用一个专门的类写枚举类型
语法:
enum sex{
//罗列限定值 (也就是说把所有可取的值罗列出来)
}
类名.枚举值
使用语法:Private Sex sex; Sex.限定值
继承:
定义:多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。
单独的这个类称为父类,基类或者超类;这多个类可以称为子类或者派生类。
有了继承以后,我们定义一个类的时候,可以在一个已经存在的类的基础上,还可以定义自己的新成员。
子类会继承父类公共的属性
作用:提高了代码的复用性
提高了代码的维护性
让类与类之间产生了关系,是多态的前提
语法:
[修饰符] class 子类名 extends 超类名{
[属性定义]
[构造方法定义]
[方法声明]
}
继承具有传递性,即多层继承(继承体系),即一个类可以既是子类,同时又是父类
因为子类会继承父类中的数据,可能还会使用父类的数据。所以,子类初始化之前,一定要先完成父类数据的初始化。
this | Super |
定义:代表本类对应的引用。 | 代表父类存储空间的标识(可以理解为父类引用) |
用法: 访问成员变量:this.成员变量 访问构造方法:this(); 访问成员方法:this.成员方法(); | 用法: 访问成员变量:super.成员变量 访问构造方法:super(); 访问成员方法:super.成员方法(); |
多态 重写父类的方法 权限必须大于父类
用哪个类就实例化一个对象 用对象调用里面的方法进行操作
本文标签: 昕鲜事
版权声明:本文标题:昕鲜事 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1687602987h120018.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论