要点1
在一个自定义的类中我们是可以声明另外一个类的属性的
customer和account两个类表示关联关系
1.alt+shift+s是快捷键,能调出get,set方法和构造器方法
super关键字的使用
多态类的使用
什么叫多态:就是把父类的引用转换成子类的多态
面向对象的特点其三
表现为Person p1=new Man();
前提Public class Man extends Person{},Man为Person的子类;
主要含义为编译看左,运行看右,即是person类中未声明的方法不能被表示,但运行时结果显示的是子类中修改过后的父类同名方法,而子类特有的方法,是表示不出来的,这就是多态性,也叫子类对象的多态性。
注:多态性不适用于属性
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201029120302784.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZsaXJ0Xw==,size_16,color_FFFFFF,t_70#pic_center
向下转型于强制类型转换
强制类型转换就像double转int,大转小,自动类型提升就是小转大
所以多态也是这样,小转大,向下转型就是大到小,列如所有的父类object转任何都是大转小
person p1=new man();//man是person的子类
man m1=(man)p1
或者people p2=(people)p1;//people是man的子类
object
|
person
|
man
|
people
这样也是可行的
object o1=new man();
person p1=(person)o1;
强制类型转换
把大的double类型的d1转换成i1小的int类型的
instanceof的使用
toString的使用
equals()的使用和==的区别
单元测试的使用
就是方便你测试的时候不用全部都跑一遍,可以一个方法一个方法的测
包装类
基本数据类型,包装类,引用数据类型的互相转换
1.基本转包装
2.还可以自动装箱
2.包装转基本
本来score是基本数据这里要转换成对象才能装进去的,但自动装箱功能把score转成了Integer类的对象,所以就不用再多态了
还可以自动拆箱
这里转的还是太狠了,还可以
Interger inScore=(Integer)obj;
if(maxScore-inScore<=10){