Java笔记之枚举类型与泛型

一、枚举类型
1.使用枚举类型设置常量语法
  public enun Constants{
      Constants_A,
      Constants_B,
      Constants_C
   }
   enum是定义枚举类型关键字,constant(常量),当需要在程序中使用该常量时,可以使用Constants.Constants_A表示。
2.操作枚举类型的成员方法
    values()
            将枚举类型成员以数组的形式返回,也可以通过该方法获取枚举类型的成员  枚举类型名称.values()    


    valuesOf()
            可以实现将普通字符串转化为枚举实例   枚举类型名称.valuesOf("字符串")


    compareTo()
             用于比较两个枚举对象在定义时的顺序    枚举对象.compareTo()


    ordinal()
             用于得到枚举成员的位置索引 索引值以0开始      枚举对象.ordinal()


3.枚举类型中的构造方法
    
     修饰权限为pravite




4.使用枚举类型的优势


    1)类型安全
    2)数据定义紧凑有效
    3)可以与其它程序部分完美交互
    4)运行效率高。
*********************************************************************************
 二、泛型
         泛型实质上是使程序员定义安全的类型。向下转型操作通常会出现ClassCastException异常,说明“向下转型”操作通常会出现问题,而泛型机制有效解决了这一问题




 1.定义泛型类


   定义泛型类语法如下:


             类名< T>     其中T代表一个类型的名称


2.泛型的常规用法


    1)定义泛型类时声明多个类型     //!!!!!可以使用泛型机制时声明一个数组,但是不可以使用泛型来建立数组的实例
      MutiOverClass<T1,T2>
      MutiOverClass:泛型类名称   其中T1和T2为可能定义的类型
      这样实例化指定类型的对象时就可以指定多个类型。如:
       MutiOverClass<Boolean,Float>=new MutiOverClass<Boolean,Float>();
     2)定义泛型类时声明数组类型
            如:public class ArrayClass<T>{
                     private T[]array;       //定义泛型数组
                     public void SetT(T[]array){
                        this.array;
                           }
                 public T[]getT(){
                      return array;
                     }    
                }


     3)集合类声明容器的元素
          使用K和V两个字符代表容器中的键值与键值相对应的具体值


         常用的被泛型化的集合类


            集合类                      泛型定义


          ArrayList                     ArrayList<E>
          HashMap                       HashMap<K,V>
          HashSet                       HashSet<E>
          Vector                        Vector<E>




3.泛型的高级用法
     1)限制泛型可用类型    //必须使用extends关键字


          class 类名称<T extends anyClass>    //其中,anyClass为某个接口或类。
     2)使用类型通配符
           泛型类名称<?extends List>a=null    // 其中,<?extends List>表示类型未知,当需要使用该泛型对象时,可以单独实例化。
       
     3)继承泛型类与实现泛型接口
            


4.泛型总结
   1)泛型的类型参数只能是类类型,不可以是简单类型,如A<int>这样的定义是错误的。
   2)泛型的类型个数可以是多个。
   3)可以使用extends关键字限制泛型的类型。
   4)可以使用通配符限制泛型的类型。















































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值