day10 this,super,final,static,内部类,枚举类 -> java基础大神进阶学习总结之19天(知识点全面覆盖,细节)

java基础总结


day10 this,super,final,static,内部类,枚举类

1.this

this:指向调用该方法的对象

用途:可用于无参调用有参来进行初始化对象,用于getter与setter方法

2.super

super指向父类

用途:

1.子类方法中调用父类被覆盖的方法

1.子类可以通过自身构造器来执行父类有参构造器来进行初始化

3.final

1.final修饰的父类,不可以被继承

2.final修饰的方法,子类继承父类后则不能给覆盖

3.final修饰的基本数据类型,只可以被赋值一次

final修饰引用类型,可以修改其中的值,不可以修改物理地址(既不可以new一个新的对象)

4.static静态

  • 使用static修饰的方法或者字段,属于,通过类名调用即可
  • 未使用static修饰的方法或者字段,属于对象,通过对象调用即可

注意:

  • ​ *使用static修饰的方法或者字段,也可以通过对象调用,底层是类名调用(速度快,性能高)

  • 静态方法只能访问静态的字段

5.内部类

  • 静态内部类:使用static修饰的内部类,那么访问内部类直接使用外部类名来访问

  • 实例内部类:没有使用static修饰的内部类,访问内部类使用外部类的对象来访问

  • 局部内部类:定义在方法中的内部类,一般不用

  • 匿名内部类:特殊的局部内部类,适合于仅使用一次使用的类

    匿名内部类语法:

    new 类名/接口名( ){

    }

    为类名的话,表示该类为继承了该类名的子类

    为接口的话,表示该类为实现了该接口的实现类

6.枚举类

当一个变量需要几种存在的值,那么就可以被定义为枚举类

枚举类可以说是把变量或者叫对象存在的情况也可以说是可能值一一列举出来

举例子:

一个铅笔盒中有一支笔,但在没有打开之前你并不知道它是什么笔,可能是铅笔也可能是钢笔,这里有两种可能,那么你就可以定义一个枚举类型来表示它!

public enum  枚举类名{
      常量对象A, 常量对象B, 常量对象C ;
}

枚举中都是全局公共的静态常量,可以直接使用枚举类名调用。


猜你喜欢

转载自blog.csdn.net/weixin_41340417/article/details/107881472