《黑马程序员》 高新技术第二天学习之枚举的入门和枚举的构造函数的调用

时间:2023-02-17 22:49:18
------- android培训java培训、期待与您交流! ----------

定义枚举使用关键字 enum
  public enum WeekDay{
    SUN,MON,TUE,WED,THI,FRI,SAT  后面可能有;也可以没有
 }

 WeekDay weekday2=WeekDay.SAT;
   我们给枚举类定义变量的时候,只能使用枚举类中所定义的那些元素

  SAT是一个对象,枚举就相当于是一个类,枚举中的一个元素就相当于是
这个类搞出来的对象。


  final 和static 谁放在前面,谁放在后面都可以。

 枚举自动帮我们实现了toString方法,
 枚举中常用的方法:
   name,自己的名字 是它在类名常量名
   ordinal  自己排行
   getClass 得到自己的类,得到WeekDay类
   看看里面有什么静态方法?
    valueOf:  别人传递过来一个"SUN"
        我们要在后台把它给变成WeekDay的实例对象
     //把字符串变成枚举所对应的那个元素
    values:返回是一个数组
        把枚举中的每一个元素装到这个数组
       即返回枚举中的所有的元素,返回的是一个数组
      length返回的是数组的长度
 《黑马程序员》 高新技术第二天学习之枚举的入门和枚举的构造函数的调用

=====================================================================
枚举类的构造方法
//枚举也是一个类,它没有构造方法,我们想为枚举构造一个构造方法
  元素列表必须位于所有的元素之前,即方法,成员变量,构造方法和其它信息
  都必须元素列表之后。如果元素列表之后,有其它的内容,元素列表必须要使用

;
  对于枚举的构造方法:必须是私有的权限  因为构造方法是私有的,我们不能让

别人创建枚举类的对象
  private WeekDay(){}
  private WeekDay(int day){}
   只要用到了类,它里面的静态代码都会去执行,它等于是静态的成员变量。所以

它执行了,构造方法就执行了。
  在元素的后面(1)指定参数列表 :这里是调用有参数的构造方法
    能否()调用没有参数的构造方法
  在创建枚举元素的时候,后面带()就可以指定在创建枚举元素的实例对象的时候
调用的是枚举类中的哪个构造方法
 《黑马程序员》 高新技术第二天学习之枚举的入门和枚举的构造函数的调用

《黑马程序员》 高新技术第二天学习之枚举的入门和枚举的构造函数的调用《黑马程序员》 高新技术第二天学习之枚举的入门和枚举的构造函数的调用《黑马程序员》 高新技术第二天学习之枚举的入门和枚举的构造函数的调用