让别人和自己看懂自己的程序代码?一文掌握Java单行多行、文档注释以及注解(Annotation)超详细的理解使用,IDEA注释注解快捷键和模板,提高程序代码更有可读性

最后

针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

下面的面试题答案都整理成文档笔记。也还整理了一些面试资料&最新2021收集的一些大厂的面试真题(都整理成文档,小部分截图)

在这里插入图片描述

最新整理电子书

在这里插入图片描述

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取


注释的内容不参与编译,即编译以后的.class的字节码文件中不包含注释的内容。

作用:

①对程序进行解释说明,增强可读性。

②调试所写的代码。(将某代码注释来debug)

格式:

单行注释:以//开头

多行注释:注释内容用/**/一对包住

class HelloJava{

/*

多行注释:

如下的main方法是程序的入口!

main的格式是固定的!

*/

public static void main(String[] args){

//单行注释:如下的语句表示输出到控制台。

System.out.println(“Hello Java !!!”);

}

}


文档注释(Java特有)


注释内容可以被JDK提供的工具javadoc解析,生成以网页文件形式展现的该程序的说明文档。

/**

文档注释:

@author Yeman

@version v1.0

*/

public class HelloJava{

/*

多行注释:

如下的main方法是程序的入口!

main的格式是固定的!

*/

/**

文档注释:

如下的main方法是程序的入口!

*/

public static void main(String[] args){

//单行注释:如下的语句表示输出到控制台。

System.out.println(“Hello Java!!!”);

}

}


Annotation(注解)的理解


从 JDK 5.0 开始, Java 增加了对元数据(MetaData) 的支持,也就是Annotation(注解)。

Annotation 其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用 Annotation,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。

Annotation 可以像修饰符一样被使用,可用于修饰包、类、构造器、方法、成员变量、参数、局部变量的声明,这些信息被保存在 Annotation 的 “name=value” 对中。

在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等。在JavaEE/Android中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替JavaEE旧版中所遗留的繁冗代码和XML配置等。

未来的开发模式都是基于注解的,JPA是基于注解的,Spring2.5以上都是基于注解的,Hibernate3.x以后也是基于注解的,现在的Struts2有一部分也是基于注解,注解是一种趋势,一定程度上可以说:框架 = 注解 + 反射 + 设计模式


常见的Annotation示例


示例一:生成文档相关的注解

@author 开发该类模块的作者,多个作者之间使用","分隔开

@version 该类模块的版本

@see 参考转向,也就是相关主题

@since 从哪个版本开始增加的

@param 对方法中某参数的说明,如果没有参数就不能写

@return 对方法返回值的说明,如果方法的返回值类型是void就不能写

@exception 对方法可能抛出的异常进行说明 ,如果方法没有用throws显式抛出的异常就不能写

其中

@param @return@exception 这三个标记都是只用于方法的

@param的格式要求:@param 形参名 形参类型 形参说明

@return 的格式要求:@return 返回值类型 返回值说明

@exception 的格式要求:@exception 异常类型 异常说明

@param@exception可以并列多个

/**

  • @Author: Yeman

  • @Date: 2021-09-10-11:13

  • @Description:

*/

public class AnnotationTest {

/**

  • 程序的主入口

  • @param args

*/

public static void main(String[] args) {

System.out.println(getArea(3));

}

/**

  • 求圆的面积方法

  • @param radius double 圆的半径

  • @return double 圆的面积

*/

public static double getArea(double radius){

return Math.PI * radius * radius;

}

}

示例二:在编译时进行格式检查(JDK内置的三个基本注解)

@Override: 重写父类中的方法,该注解只能用于方法

@Deprecated: 用于表示所修饰的元素(类、方法等)已过时

@SuppressWarnings: 抑制编译器警告

public class AnnotationTest{

public static void main(String[] args) {

@SuppressWarnings(“unused”)

int a = 10;

}

@Deprecated

public void print(){

System.out.println(“过时的方法”);

}

@Override

public String toString() {

return “重写的toString方法()”;

}

}

示例三:跟踪代码依赖性,实现替代配置文件功能

Servlet3.0提供了注解(annotation),使得不再需要在web.xml文件中进行Servlet的部署。spring框架中关于“事务”的管理等。

最后,附一张自己面试前准备的脑图:

image

面试前一定少不了刷题,为了方便大家复习,我分享一波个人整理的面试大全宝典

  • Java核心知识整理

image

  • Spring全家桶(实战系列)

image.png

Step3:刷题

既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。

以下是我私藏的面试题库:

image

很多人感叹“学习无用”,实际上之所以产生无用论,是因为自己想要的与自己所学的匹配不上,这也就意味着自己学得远远不够。无论是学习还是工作,都应该有主动性,所以如果拥有大厂梦,那么就要自己努力去实现它。

最后祝愿各位身体健康,顺利拿到心仪的offer!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

感叹“学习无用”,实际上之所以产生无用论,是因为自己想要的与自己所学的匹配不上,这也就意味着自己学得远远不够。无论是学习还是工作,都应该有主动性,所以如果拥有大厂梦,那么就要自己努力去实现它。

最后祝愿各位身体健康,顺利拿到心仪的offer!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值