static,抽象类和抽象方法,多态

static关键字

   静态属性:

     a 静态属性能被类名直接调用(也能被实例调用)

     b 静态属性被类的所有实例所共享

  静态方法:

     a 静态方法可以直接被类名调用

     b 在静态方法中不能使用this和super(this代表当前对象,也就是当前正在执行当中的方法被哪个对象调用,this就代表哪个对象,但是静态方法可以直接通过类名调用,类名调用静态方法时,this无法代表一个类名!!所以,静态方法中不能使用this(super))

    c 静态方法只能访问静态属性

  3.静态块:static{ };

     a 静态块在类被加载时,自动执行,当第一次实例化类的对象是就会加载类

      b 静态块在整个运行期间,只执行一次

抽象类和抽象方法

   抽象类不能被实例化

   抽象方法只能存在于抽象类中(抽象方法不能有方法体)

   抽象类中即可以有抽象方法也可以有非抽象方法(而接口不能含有任何非抽象方法)

   抽象类中的抽象方法必须在非抽象子类中得以实现(实现就是一种重写,只不过重写的是一个抽象方法)

   如果子类也是抽象类,就不必实现抽象类中的抽象方法

   抽象类不能再被final修饰

   抽象方法不能被final和static修饰

    抽象类的作用:为了被子类继承,从而提高代码的重用性

多态

   多态:多种表现形态

   多态的体现:向上转型

   多态的前提:继承

   多态的好处:提高代码的扩展性

   多态的限制:向上转型发生时,子类独有的方法无法使用

你可能感兴趣的:(static,抽象类和抽象方法,多态)