定义:多个方法有相同的名字編译时能识别出来。这些方法的签名不同或者是参数的个数不同,或者是参数类型不同通过方法重载能实现多态。方法返回值类型修饰符类型,和重载没有关系可以与父类不同。父类和子类重载父类方法的关系里包含了一条里氏替换原则—也就是Is-A的关系。也就是說父类能够被替换成子类重载父类方法那么父类所能接受的任何参数子类重载父类方法也要能够接受。这要求子类重载父类方法要求只能比父类更宽松不能更严格。
定义:继承是指子类重载父类方法重写父类或超类父类包括所有直接或间接被继承的类。一个类只能有┅个直接父类
当一个子类重载父类方法要调用本类或者父类的构造方法时,使用this或者super关键字this调用本类的其他构造方法,super调用直接父类嘚构造方法this或super语句要放在第一条语句,有且只能有一条如果没有this或super,则编译器自动加上super(),即调用直接父类不带参数的构造方法因为必須令所有父类构造方法都得到调用,否则整个对象的构建就可能不正确
多态是指用多各类去实现同一个接口。接口是某种特征的约定萣义接口 interface,所有方法都自动是public abstract。实现接口implements,由不同父类继承而来的子类重载父类方法也可以实现同一个接口接口也有自己的方法和属性,但昰在接口中声明的方法默认是抽象的一个类要实现接口,就要实现接口中声明的方法接口不能够被实例化,因为接口中的方法都是抽潒的是没有方法体的,不能产生具体的实例但可以使用接口类型的引用指向一个实现了该接口的对象。extends可以继承一个接口但继承之後仍然是一个接口,接口只有用implements继承的类才能有具体的实现
这里以一个比较接口为例说明接口的用法:
发布了72 篇原创文章 · 获赞 13 · 访问量 1万+