接口、多态、instanceof关键字

接口:

为了弥补单继承造成的局限,产生了接口的概念。在接口全都是有全局常量以及抽象方法组成。

语法:
访问权限修饰符  interface  接口名称{
    全局常量
	抽象方法
}

注意:
接口的抽象方法必须是public 的访问权限。

    接口不能直接创建对象。

    接口如何创建对象,只能通过子类进行创建。
子类如何实现接口:
访问权限修饰符  class 子类名称 implements 接口名称{
	属性
	方法
}

子类(不是抽象类)如果实现一个接口,必须重写接口中全部的抽象方法。子类可以继承接口中的全部的全局常量。

java中只允许单继承,一个子类只能继承一个父类,但是子类实现接口,可以同时实现多个。

子类如果想实现多个接口:
访问权限修饰符  class 子类名称 implements 接口名称,接口名称,...,接口名称{
	属性
	方法
}

接口可以继承接口,并且允许多继承。

接口不能实现接口,接口只能继承接口。但是不能继承抽象类,抽象类可以实现接口。

多态性:

一种事物的多种的表现形态

多态性表现在两个方面:
1方法的重载与重写。

2.对象的多态性

  对象的多态性表现在两个方面
  
	1.对象的向上转型
    
    指的是子类可以转变为父类类型。
    
    父类类型 对象名称 = 子类对象

    发生向上转型之后,父类对象只能调用自己所拥有的方法,对于子类所单独拥有的方法,
    父类对象不能调用,当父类对象调用子类与父类共有的方法时,
    如果此方法被子类重写,则执行子类重写的方法。

	2.对象的向下转型
    
	子类类型 对象名称 = (子类类型)父类对象;


`注意:`如果对象想要发生向下转型,必须先发生向上转型。如果没有发生向上转型,则会出现类型转换异常。

`抽象类一般都当做模板。`

`接口一般都当做标准`
原文地址:https://www.cnblogs.com/SunMoonSky/p/12370659.html