1.抽象类
1.抽象类是什么?
在生活中有一些抽象和定义事物本质概念的,就是当你在设计类的时候,这个类在脑海中没有一个准确的印象的类,我们适合用抽象去描述,他揭示了这个类是什么!即:类 is a xxx。
2.抽象类的语法
3.抽象类的特点
1.能设计成抽象类的都是用来定义事物本质,其属性和方法都是定义xxx的条件(平时思考当方法不好具体实现的时候,就将该类设计成抽象类)
2.抽象类不能new出对象,可以有构造方法
3.抽象类可以有抽象方法也可以有普通方法
4.抽象类语法和普通类的区别
1.class被abstract所修饰的类叫做抽象类
2.抽象类可以有构造方法但是没有办法new出对象,可以被调用(非抽象子类被实例化时运用多态new)
3.抽象类可以有抽象方法,也可以有普通方法,但是普通类不能有抽象方法
4.有抽象方法的类一定是抽象类,抽象类不一定有抽象方法
5.抽象类关注点在属性上
2.抽象方法
1.作用:在我们平时设计类是,一些方法无法给出具体的实现,就可以使用抽象方法
2.特点:
没有方法体
抽象类被非抽象类继承时,必须要重写
抽象方法案例:
子类继承抽象类时,方法重写案例:
修饰符static,final,abstract 总结:
3.接口
定义:接口是一种非常特殊的抽象类,他关注的在于抽取事物本质外共有的功能,通常用于描述has a XXX
特点:1.java中的继承都是单继承,接口是多实现
2.接口和接口之间没有实现,但是可以多继承
3.接口中的属性默认为常量,方法默认都是抽象方法
2.接口和抽象类的区别
1.抽象类可以有抽象方法,也可以有普通方法,但是接口中都是抽象方法
2.抽象类可以有成员变量,但是接口中都是常量
3.抽象类是揭示事物本质的概念,用于描述 is a XXX
4.在于抽取事物本质外共有的功能,通常用于描述has a XXX
注意:抽象类和接口都可以实现多态,也适用于向上向下转型
4.常用类
1.Data类(时间)
Data标识特定的瞬间,精确到毫秒。
Data类的构造方法:
实例化对象
2.SimpleDateFormat类
SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类。
它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。
格式化日期:
解析日期:
3.Random类
random类的实例是用来生成随机数的一个类
随机数实例:
4.BigDecimal类
对于不需要任何准确计算精度的数字可以直接使用float或double,但是如果需要精确计算的结果,则必须使用BigDecimal类,而且使用BigDecimal类也可以进行大数的操作。