day10【枚举,包装类,接口】
装箱与拆箱
装箱:把基本数据类型转为包装类对象。
转为包装类的对象,是为了使用专门为对象设计的API和特性
拆箱:把包装类对象拆为基本数据类型。
转为基本数据类型,一般是因为需要运算。
基本数值---->包装对象
Integer i1 = new Integer(4);//使用构造函数函数
Integer i2 = Integer.valueOf(4);//使用包装类中的valueOf方法
包装对象---->基本数值
Integer i1 = new Integer(4);
int num1 = i1.intValue();
数据类型的最大最小值
Integer.MAX_VALUE和Integer.MIN_VALUE
Long.MAX_VALUE和Long.MIN_VALUE
Double.MAX_VALUE和Double.MIN_VALUE
字符转大小写
Character.toUpperCase('x');
Character.toLowerCase('X');
接口
定义格式
- interface + 接口名;
- 接口属于引用数据类型:数组,类,接口。
- 接口中声明的属性必须是公开静态常量
- 接口中的方法必须是public修饰 方法必须是abstract修饰,
- 接口中的方法都是抽象方法
- 接口,不能实例化(new对象)。
一个类使用 implements 关键字实现一个接口,实现方法后,叫做实现类。
必须实现这个接口中所有的抽象方法
如何调用对应的方法
- 对于接口的静态方法,直接使用“接口名.”进行调用即可
- 也只能使用“接口名."进行调用,不能通过实现类的对象进行调用
- 对于接口的抽象方法、默认方法,只能通过实现类对象才可以调用
- 接口不能直接创建对象,只能创建实现类的对象
接口的多实现
之前学过,在继承体系中,一个类只能继承一个父类。而对于接口而言,一个类是可以实现多个接口的,这叫做接口的多实现。并且,一个类能继承一个父类,同时实现多个接口。
当一个类实现了一个接口
一个类可以即继承父类,又实现接口
一个类可以实现多个接口 当这个类实现了接口后,这个类被称作该接口的实现类 那么当接口需要对象的时候 就可以创建这个类对象
亲爹优先原则
当一个类,既继承一个父类,又实现若干个接口时,父类中的成员方法与接口中的抽象方法重名,子类就近选择执行父类的成员方法。
枚举
语法格式:
【修饰符】 enum 枚举类名{
常量对象列表
}
【修饰符】 enum 枚举类名{
常量对象列表;
其他成员列表;
}
枚举类型常用方法
1.toString(): 默认返回的是常量名(对象名),可以继续手动重写该方法!
2.name():返回的是常量名(对象名) 【很少使用】
3.ordinal():返回常量的次序号,默认从0开始
4.values():返回该枚举类的所有的常量对象,返回类型是当前枚举的数组类型,是一个静态方法
5.valueOf(String name):根据枚举常量对象名称获取枚举对象