一、枚举

简介:

1)枚举对应英文(enumeration,简写 enum)

2)枚举是一组常量的集合。

3)可以这里理解:枚举属于一种特殊的类,里面只包含一组有限的特定的对象。

实现方式:

1、自定义枚举方式

1)构造器私有化
2)本类内部创建一组对象[四个春夏秋冬]
3)对外暴露对象(通过为对象添加public final static修饰符)

4)可以提供get方法,但是不要提供set

2、使用enum关键字进行设置

3、使用enum实现接口

1):使用enum关键字后,就不能再继承其它类了,因为enum会隐式继承Enum,而Java是 单继承机制

2):enum实现的枚举类,仍然是一个类, 所以还是可以实现接口的。

静态类可直接调用

二、注解

1):注解(Annotation)也被称为元数据(Metadata),用于修饰解释包、
类、方法、属性、构造器、局部变量等数据信息。
2):和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于
嵌入在代码中的补充信息。
3):在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略
警告等。在JavaEE中注解占据了更重要的角色,例如用来配置应用程
序的任何切面,代替java EE旧版中所遗留的繁冗代码和XML配置等。

1、@override:重写父类方法,只能用于方法,只要子类重写了父类的方法,不管有没有@override都是重写

如果写了override注解,编译器就会去检查该方法是否真的重写了父类的方法,如果的确重写了,则编译听过,如果没有构成重写,则编译错误

看@Override注解源码为@Target(ElementType.METHOD),说明只能修饰方法

@Target是修饰注解的注解,称为无注解,记住这个概念.

2、@Deprecated:用于表示某个程序元素(类,方法等)已过时

1.@Deprecated 修饰某个元素,表示该元素已经过时

2。即不在推荐使用,但是仍然可以使用,使用之后,对应的属性或者方法会出现一个中划线

3、@SuppressWarnings:抑制编译器警告

通常放在方法和类上

4、源注解

枚举和注解@override、@Deprecated、@SuppressWarnings的更多相关文章

  1. java--加强之 jdk1.5简单新特性,枚举,注解

    转载请申明出处:http://blog.csdn.net/xmxkf/article/details/9944041 Jdk1.51新特性(静态导入,可变参数,加强for循环,自动拆装箱) 08.ja ...

  2. 第8章 枚举类&注解

    8.枚举及注解 8.1 如何自定义枚举类 1课时 8.2 如何使用关键字enum定义枚举类 1课时 8.3 枚举类的主要方法 1课时 8.4 实现接口的枚举类 1课时 8-1 枚举类 枚举类入门 枚举 ...

  3. Java复习——枚举与注解

    枚举 枚举就是让某些变量的取值只能是若干固定值中的一个,否则编译器就会报错,枚举可以让编译器在编译阶段就控制程序的值,这一点是普通变量无法实现的.枚举是作为一种特殊的类存在的,使用的是enum关键字修 ...

  4. 枚举类&&注解&&反射

    什么是枚举类? 枚举类是优化定义固定对象的一种特殊的类. 换句话说,在需要类的实例为一个或者多个并且相对固定的时候,使用枚举类.(枚举类可扩展) 类的实例相对来说固定的有日期,客观不变的一些数字等等. ...

  5. Java SE 枚举,注解,增强for循环

    Java SE 进阶 1.Enum 枚举对象名通常使用全部大写,常量的命名规范 构造器私有化 本类内部创建一组对象 对外暴露对象(通过为对象添加 public final static 修饰符) 可以 ...

  6. 编写高质量代码:改善Java程序的151个建议(第6章:枚举和注解___建议88~92)

    建议88:用枚举实现工厂方法模式更简洁 工厂方法模式(Factory Method Pattern)是" 创建对象的接口,让子类决定实例化哪一个类,并使一个类的实例化延迟到其它子类" ...

  7. Effective java笔记(五),枚举和注解

    30.用enum代替int常量 枚举类型是指由一组固定的常量组成合法值的类型.在java没有引入枚举类型前,表示枚举类型的常用方法是声明一组不同的int常量,每个类型成员一个常量,这种方法称作int枚 ...

  8. [Effective Java]第六章 枚举和注解

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  9. 《Effective Java》学习笔记 —— 枚举、注解与方法

    Java的枚举.注解与方法... 第30条 用枚举代替int常量 第31条 用实例域代替序数 可以考虑定义一个final int 代替枚举中的 ordinal() 方法. 第32条 用EnumSet代 ...

随机推荐

  1. Hbase集群安装Version1.1.5

    Hbase集群安装,基于版本1.1.5, 使用hbase-1.1.5.tar.gz安装包. 1.安装说明 使用外部Zookeeper集群而非Hbase自带zookeeper, 使用Hadoop文件系统 ...

  2. Zookeeper基础教程(六):.net core使用Zookeeper

    Demo代码已提交到gitee,感兴趣的更有可以直接克隆使用,地址:https://gitee.com/shanfeng1000/dotnetcore-demo/tree/master/Zookeep ...

  3. 大厂必问的Java集合面试题

    本文目录: 常见的集合有哪些? List .Set和Map 的区别 ArrayList 了解吗? ArrayList 的扩容机制? 怎么在遍历 ArrayList 时移除一个元素? Arraylist ...

  4. Selenium_按钮的点击、文本框的输入和清除操作(3)

    from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.get(" ...

  5. docker查看容器的ip地址

    查看Docker的底层信息. docker inspect 会返回一个 JSON 文件记录着 Docker 容器的配置和状态信息 # 列出所有容器的IP地址docker inspect --forma ...

  6. R语言基本数据对象之向量的主要运算

    在R语言里操作和接触的所有东西都称作对象(object).对象有很多种类 可以包含各种类型的数据.R 语言里所有的东西都被称为对象,R语言中常见的数据类型有几下几种,分别是字符型 (character ...

  7. winform GDI+ 抗锯齿

    graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

  8. 微服务架构 | 12.1 使用 Apache Dubbo 实现远程通信

    目录 前言 1. Dubbo 基础知识 1.1 Dubbo 是什么 1.2 Dubbo 的架构图 1.3 Spring Cloud 与 Dubbo 的区别 1.4 Dubbo 的特点 1.5 Dubb ...

  9. Java Selenide 介绍&使用

    目录 Selenide 介绍 官方快速入门 元素定位 元素操作 浏览器操作 断言 常用配置 Selenide 和 Webdriver 对比 Selenide 介绍 Selenide github Se ...

  10. linux下git安装使用新手教程。

    1.进入官网,创建Github帐户,获取git服务. 2.本地安装git客户端,yum install git. 3.生成ssh key,使用命令 "ssh-keygen -t rsa -C ...