《张三记录-java》枚举 泛型 内部类

一.枚举

1.简介

枚举类型是JDK1.5引入的新的类型,本质上就是一个类,是自定义的数据类型

作用:

  • 用来限制可能的取值个数
  • 提高代码可读性和扩展性

适用的场合:有限的取值个数

2.用法

使用 enum 关键字 (enumeration)

定义方法 public enum 枚举类型名{ }

特性:

  • 枚举类中可以属性,方法,构造方法。

  • 枚举类中的构造方法必须为私有的,不允许外部创建对象,只能在内部创建

  • 在内部创建对象时,位于当前类的第一行

    有参的构造: 对象名(参数)

    无参的构造:对象名() 小括号可以省略

二.泛型

1.简介

泛型就是参数化类型,将一个数据类型作为参数

在定义时不知道用什么类型,在使用时指定具体的类型,类似于参数,称为参数化类型

分类:

  • 泛型类
  • 泛型接口
  • 泛型方法

2.泛型类

  • 表示类中有一个未知的类型

  • 定义方法 : public class 类名{ },T表示一种数据类型,是泛型的类型参数,可以使用任意标识 一般 使用 T K V E

  • 可以在类中使用T,表示一个类型

  • 在使用类时需要在类名后通过<类型>指定具体类型,就是将T表示的类型传入

    类名<类型> 对象名 = new 类名<>();

  • 泛型只能传入引用类型,如果是基本类型,就使用包装类

3.泛型接口

  • 表示接口中有一个未知的类型

  • 定义方法 : public interface 接口名{ }

  • 可以在接口中使用T,表示一个类型

  • 在使用类时需要在接口名后通过<类型>指定具体类型,就是将T表示的类型传入

4.泛型方法

  • 表示方法中有一个未知的类型
  • 定义方法 : public 修饰符 返回值类型 方法名(){ }
  • 可以在方法中使用T,表示一个类型
  • 在调用方法时指定具体的类型
  • 应用场景: 如果类和接口都没有定义泛型,但想在方法中使用泛型,此时可以定义为泛型方法

5.泛型的特性

  • 泛型的类型参数必须是引用类型

  • 泛型的类型参数可以有多个

  • 可以使用泛型通配符,两种

    <? extends 类型T> 参数类型必须是T或者T的子类 <? super 类型T> 参数类型必须是T或者T的父类

三.内部类

1.简介

定义在另一个类里面的类,称为内部类 InnerClass

包含内部类的类,称为外部类 Outer Class

分类:

  1. 成员内部类
  2. 静态内部类
  3. 局部内部类
  4. 匿名内部类,最常用

2.用法

2.1成员内部类

在外部类中访问内部类: 可以访问内部类中所有的属性,方法,包含private修饰的。 对象.属性名/方法名

在外部类外面访问内部类:不能访问private修饰的属性,方法。 先创建外部类对象,在创建内部类对象 对象.属性名/方法名

在内部类中访问外部类: 直接访问

2.2 静态内部类

使用static修饰的成员内部类

2.3局部内部类

局部内部类,也称为方法内部类,定义在外部类的方法中的类

  • 只能在外部类的方法中使用

2.4匿名内部类

就是没有名字的内部类。

创建匿名内部类,必须作为new语句的一部分来声明

类名/接口名 对象名  = new  类名/接口名(){
    //匿名内部类
    
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值