1.多态
概念:
在面向对象语言中,接口的多种不同的实现方式即为多态。
允许将子类类型赋值给父类类型。多态的前提是继承和方法重写。 多态是父类对象表现多种子类的形态的能⼒的特征。 ⼀句话多态就是⽗类引⽤⼦类对象。 向同⼀个⽗类的不同⼦类发送同⼀条消息,⾏为不同 。 对于父类中的一个方法,在不同子类中有不同的实现。父类引用子类对象,调用父类被重写的方法时,子类有不同的响应。
实现多态 :
1).继承:子类继承父类
2).重写:子类方法重写父类方法
3).向上转型:父类引用指向子类对象
4).调用父类被重写的方法时,不同的子类效果不同
为何使用多态 :
实现程序设计的开-闭原则,对扩展开放,对修改关闭
向上转型/向下转型:
向上转型:⽗类引⽤⼦类对象(⾃动成⽴,缺点是失去调⽤⼦类独有⽅法的能⼒)
向下转型:⼦类引⽤⽗类对象(强制转换,慎重),需要使用instanceof进行类型判断
2.抽象类
概念:
如果一个类只是一个概念,没有具体的形象,我们可以把这个类定义为抽象类
关键字:abstract
使用场景:一般作为顶层类(父类),被子类继承
注:抽象类的存在是为了让子类继承用的,不是为了创建对象。
抽象类和抽象方法的定义:
抽象类:使用 abstract 关键字修饰的类。
[权限修饰符] abstract class 类名{}
抽象方法: 使用abstract关键字修饰的方法
[权限修饰符] abstract 返回值 方法名();//没有大括号
注意 :抽象方法没有方法体,也没有{}
抽象类的特点:
1.抽象类不能创建对象,不能new对象。抽象类的关键字是abstract。
2.抽象类可以定义抽象方法,也可以没有抽象方法
3.有抽象方法的类一定要定义成抽象类
4.抽象类中可以定义实例方法
5.抽象类可以定义构造方法,在子类中可以调用抽象类的构造方法
6.子类继承了抽象类,则一定要重写/实现其中的抽象方法,如果没有实现父类的抽象方法,则子类也要变成抽象类
7.抽象方法需要在方法前写abstract关键字,并且不能有方法体(不能写大括号)
Arrays数组工具类
1、拼接为字符串:

2、数组排序

3、数组扩容

二维数组

访问数组

版权声明:本文为weixin_53997529原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。