位置: IT常识 - 正文

day30-注解(注解@entity)

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

推荐整理分享day30-注解(注解@entity),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:注解是什么意思比如,注解是干嘛的,所有注解,注解是什么意思比如,所有注解,注解是啥,注解是什么意思比如,注解是啥,内容如对您有帮助,希望把文章链接给更多的朋友!

基本的Annotation介绍:

使用Annotation时要在其前面添加@符号,并把该Annotation当成一个修饰符使用。用于修饰它支持的程序元素

三个基本的Annotation:

@Override:限定某个方法,是重写父类方法,该注释只能用于方法

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

@SuppressWarnings:抑制编译器警告

2.@Override注解

例子:

package li.annotation;public class Override_ { public static void main(String[] args) { }}class Father{//父类 public void fly(){ System.out.println("Father fly ..."); }}class Son extends Father{//子类 //@Override 放在fly方法上,表示子类的fly方法重写了父类的fly方法 //即使这里没有写@Override,其实还是重写了父类方法 //但是如果写了@Override注解,编译器就会检查该方法是否整的重写了父类的方法。 //如果的确重写了就编译通过,如果没有构成重写则编译错误 //它的意义就在于语法的校验 @Override public void fly(){ System.out.println("Son fly ..."); }}

@Override使用说明:

@Override表示指定重写父类的方法(从编译层面验证),如果父类没有fly方法,则会报错如果不写@Override注解,而父类仍有 public void fly(){},仍然构成重写@Override只能修饰方法,不能修饰其他类、包、属性等等查看@Override注解源码为@Target(ElementType.METHOD),说明只能修饰方法@Target是修饰注解的注解,称为元注解

点击@Override进去可以看到Override的定义:

补充说明:@interface的说明

@interface不是接口,是注解类 ,在JDK1.5之后加入的

3.@Deprecated注解

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

例子:

package li.annotation;public class Deprecated_ { public static void main(String[] args) { AAA a = new AAA(); a.hi(); System.out.println(a.n1); }}// @Deprecated 修饰某个元素,表示该元素已经过时// 即 不再推荐使用,但是仍然可以使用@Deprecatedclass AAA{ @Deprecated public int n1 = 10; @Deprecated public void hi(){ }}

查看@Deprecated注解类的源码:

@Deprecated使用说明:

用于表示某个程序元素(类、方法等)已过时@Deprecated可以修饰CONSTRUCTOR(构造器), FIELD(属性), LOCAL_VARIABLE(局部变量), METHOD(方法), PACKAGE(包), PARAMETER(参数), TYPE(类型)@Deprecated的作用可以做到新旧版本的兼容和过渡3.@SuppressWarnings注解

@SuppressWarnings属性介绍及属性说明:(部分)

属性属性说明all抑制所有警告boxing抑制装箱、拆箱操作时候的警告cast抑制映射相关的警告dep-ann抑制启用注释的警告deprecation抑制过期方法警告fallthrough抑制确在switch中缺失breaks的警告finally抑制finally模块没有返回的警告hiding抑制与隐藏变数的区域变数相关的警告incomplete-switch忽略没有完整的switch语句nls忽略非nls格式的字符null忽略对null的操作rawtypes忽略没有指定泛型的警告(传参时没有指定泛型的警告错误)restriction抑制使用不建议或禁止参照相关的警告serial抑制与实现序列化的类遗漏serialVersionUID的的警告static-access抑制不正确的静态访问方式警告synthetic-access抑制子类没有按最优方法访问内部类的警告unchecked抑制没有进行类型检查操作的警告unqualified-field-access抑制没有权限访问的域的警告unused抑制没被使用过的代码的警告

例子:

package li.annotation;import java.util.ArrayList;import java.util.List;// 1.当我们不希望看到警告时,可以使用@SuppressWarnings注解来抑制警告信息// 2.在{""}中,可以写入你希望抑制(不显示)的警告信息// 3.@SuppressWarnings的作用范围和你放置的位置有关// 比如 @SuppressWarnings放置在main方法,那么抑制警告的范围就是main方法public class SuppressWarnings_ { @SuppressWarnings({"all"}) public static void main(String[] args) { List list = new ArrayList(); list.add("jack"); list.add("mary"); list.add("Bob"); System.out.println(list);//[jack, mary, Bob] }}

查看@SuppressWarnings源码:

day30-注解(注解@entity)

@SuppressWarnings可以放置的位置有:TYPE(类型), FIELD(属性), METHOD(方法), PARAMETER(参数), CONSTRUCTOR(构造器), LOCAL_VARIABLE(局部变量)

该注解类有一个数组String[] value(),通过该数组可以在@SuppressWarnings({""})中设置多个属性,如@SuppressWarnings({"rawtypes","unchecked","unused"});

4.元注解

元注解的基本介绍:

JDK的元Annotation用于修饰其他Annotation

元注解的种类:

Retention:指定注解的作用范围,三种:SOURCE,CLASS,RUNTIME

Target:指定注解可以在哪些地方使用

Documented:指定该注解是否会在javadoc中体现

Inherited:子类会继承父类注解

4.1@Retention注解

说明:

只能用于修饰一个Annotation定义,用于指定该Annotation可以保留多长时间,@Rentention包含一个RetentionPolicy类型的成员变量,使用@Rentention时必须为该value成员变量指定值:

​@Rentention的三种值:

RetentionPolicy.SOURCE:编译器使用后,直接丢弃这种策略的注解RetentionPolicy.CLASS:编译器把注解记录在class文件中,当运行Java程序时,JVM不会保留注解。这是默认值RetentionPolicy.RUNTIME:编译器把注解记录在class文件中,当运行Java程序时,JVM会保留注解。程序可以通过反射来获取该注解

4.2@Target注解

基本说明:

用于修饰Annotation定义,用于指定 被修饰的Annotation可以用于修饰 哪些程序元素

@Target也包含一个名为value的成员变量

@Documented@Retention(RetentionPolicy.RUNTIME)//它的作用范围是RUNTIME@Target(ElementType.ANNOTATION_TYPE)//这里的ANNOTATION_TYPE 说明@Target只能修饰注解public @interface Target {//注释类 /** * Returns an array of the kinds of elements an annotation type * can be applied to. * @return an array of the kinds of elements an annotation type * can be applied to */ ElementType[] value();}4.3@Documented注解

基本说明:

@Documented:用于指定被该元Annotation修饰的Annotation类将被 javadoc工具提取生成文档,即在生成文档时,可以看到该注解。

PS:定义为@Documented的注解必须设置Retention值为RUNTIME

4.4@Inherited注解

被它修饰的Annotation将具有继承性,如果某个类使用了被@Inherited修饰的Annotation,则其子类将自动具有该注解

本文链接地址:https://www.jiuchutong.com/zhishi/309292.html 转载请保留说明!

上一篇:python中filter与map不同(python中map和filter有啥区别)

下一篇:elementui中表单el-form的label如何设置宽度(element表格表单)

  • 怎样装饰和运营好你的微博(怎么运营一个新开的装饰公司)

    怎样装饰和运营好你的微博(怎么运营一个新开的装饰公司)

  • 网络推广如何抓取流量,网络推广员集中推广方式(网络推广的五种方法)

    网络推广如何抓取流量,网络推广员集中推广方式(网络推广的五种方法)

  • 邮政有微信余额提醒吗(邮政微信余额变动提醒)

    邮政有微信余额提醒吗(邮政微信余额变动提醒)

  • 微信美颜怎么用(微信美颜怎么用轻颜相机)

    微信美颜怎么用(微信美颜怎么用轻颜相机)

  • 社群空间怎么开通(社群空间什么意思)

    社群空间怎么开通(社群空间什么意思)

  • 单反开机键是哪个(单反相机开机键在哪)

    单反开机键是哪个(单反相机开机键在哪)

  • ipadmini5长和宽(ipadmini5长和宽多少)

    ipadmini5长和宽(ipadmini5长和宽多少)

  • oppoace屏幕是哪家的(oppoace1是什么屏幕)

    oppoace屏幕是哪家的(oppoace1是什么屏幕)

  • 微信不上传身份证照片影响使用不(微信不上传身份证还能正常消费吗)

    微信不上传身份证照片影响使用不(微信不上传身份证还能正常消费吗)

  • 三星s8卡槽怎么放卡2(三星s8怎么取卡槽)

    三星s8卡槽怎么放卡2(三星s8怎么取卡槽)

  • 1650和1650super区别(1650和1650super区别大不大)

    1650和1650super区别(1650和1650super区别大不大)

  • 支付宝清空购物车是什么意思(支付宝清空购物车活动上限)

    支付宝清空购物车是什么意思(支付宝清空购物车活动上限)

  • 华硕笔记本充不进去电怎么回事(华硕笔记本充不满电是什么问题)

    华硕笔记本充不进去电怎么回事(华硕笔记本充不满电是什么问题)

  • 苹果7p电源键失灵怎么开机(苹果7p电源键失灵怎么办)

    苹果7p电源键失灵怎么开机(苹果7p电源键失灵怎么办)

  • 无线耳机掉了能定位吗(无线耳机掉了能找到吗)

    无线耳机掉了能定位吗(无线耳机掉了能找到吗)

  • 手机qq怎么一次性删除多个好友(手机QQ怎么一次性删除所有联系人)

    手机qq怎么一次性删除多个好友(手机QQ怎么一次性删除所有联系人)

  • 手机qq黄钻怎么取消自动续费(手机qq黄钻怎么免费领取)

    手机qq黄钻怎么取消自动续费(手机qq黄钻怎么免费领取)

  • 手机显示2g是怎么回事(手机显示2g是怎么改成4g)

    手机显示2g是怎么回事(手机显示2g是怎么改成4g)

  • word被限制编辑怎么办(word被限制编辑不了)

    word被限制编辑怎么办(word被限制编辑不了)

  • 佳能80d连拍怎么设置(佳能80d连拍怎么调)

    佳能80d连拍怎么设置(佳能80d连拍怎么调)

  • 三星s8卡托断了怎么取(三星s8卡托断了还能用吗)

    三星s8卡托断了怎么取(三星s8卡托断了还能用吗)

  • 苹果78x区别在哪(iphone 78对比)

    苹果78x区别在哪(iphone 78对比)

  • 亚马逊全球开店流程(亚马逊全球开店官方网站)

    亚马逊全球开店流程(亚马逊全球开店官方网站)

  • Wi-Fi认证完成了三星即将推出的12英寸的Windows 1(wifi认证失败怎么办)

    Wi-Fi认证完成了三星即将推出的12英寸的Windows 1(wifi认证失败怎么办)

  • Win10无法访问局域网电脑怎么办(Win10无法访问局域网计算机)

    Win10无法访问局域网电脑怎么办(Win10无法访问局域网计算机)

  • WordPress数据库修改用户名方法(wordpress建立数据库错误)

    WordPress数据库修改用户名方法(wordpress建立数据库错误)

  • pnpm的基本原理及快速使用(pnpnpn的工作原理)

    pnpm的基本原理及快速使用(pnpnpn的工作原理)

  • 减免税款递延收入怎么算
  • 简易计税方法的计算公式
  • 税务申报退税
  • 新公司成立后的第一个文件是什么
  • 金税四期对企业的风险
  • 个体户注销工商没有收走公章
  • 零税率和免税一样吗?哪一个更优惠?
  • 退回的税款如何做账
  • 发生销货退回增值税专用发票如何处理
  • 申报过的印花税怎么删除
  • 利润是负数如何计算利润率
  • 计提房屋折旧会计分录
  • 总公司和分公司类型必须一样么
  • 机器设备的损耗属于什么会计科目类别
  • 房屋租赁发票是什么意思
  • 理财产品 会计分录
  • 每个月工资都不一样,怎么计算个税
  • 向员工发放用餐费的通知
  • 出租房产业务企业所得税如何处理?
  • 额外收入如何避税
  • 生产设备投资入股增值税
  • 支付知识产权服务费账务处理
  • 注销未分配利润怎么处理账务
  • windows10如何切屏
  • win10系统如何卸载ie11
  • 进项税转出补交的增值税和附加税可以税前扣除吗
  • 企业抄报税怎样操作
  • 多收不用退的货物怎么办
  • 实习生究竟该怎么缴个税?
  • 192.168.2.1 路
  • 每个建筑项目都有监理吗
  • 公司制作横幅计入什么科目?
  • php生成xml文件
  • javaweb知识点汇总
  • php数组实现原理
  • jsoup js
  • 如何正确配置防火墙安全策略
  • php怎么调用图片
  • username命令
  • 苹果2021年在中国不能用了吗
  • 垃圾清运费进入会计什么科目
  • 航天金税税控盘运行环境
  • 公司购买的房屋怎么入账
  • 邮电局上级部门
  • 织梦怎么调用当前栏目下的文章
  • python字典按要求
  • 申报的财务报表在哪里查询
  • 成本票和进项票举例说明
  • sql server自动生成行号
  • 农副产品增值税发票怎么开
  • 工会经费到底怎么算
  • 暂估和冲暂估分录
  • 收到以前年度增值税退税账务处理怎么做账
  • 企业取得交易性金融资产的主要目的是
  • 加盖发票专用章有效什么意思
  • 实收资本的账务处理会影响什么
  • 应收账款的账面余额是什么意思
  • 查询公司的公积金账号怎么查
  • 利息收入是不是企业的收入
  • 账户设置的三种情况
  • sql server怎么改数据
  • linux清屏幕命令
  • freebsd源代码开放?
  • windows无法启动,可能原因
  • linux dns1
  • unity怎么bake
  • excel的基本数据类型
  • c#在unity的作用
  • js获取html自定义属性
  • jquery的加载事件
  • linux中xargs用法
  • 文件夹权限命令
  • ztree重新加载数据
  • shell脚本定时任务怎么写
  • dom教学
  • 沈阳车辆税务管理局电话
  • 1月纳税申报截止时间
  • 天津摇号申请查询
  • 西安市人力资源和社会保障局关于2020年
  • 建筑行业增值税税率2021
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设