随笔 - 217  文章 - 4  评论 - 4  阅读 - 23587

Java学习十四

今天学习了Java中的注解,以及联系了两道Java小程序。

一、注解与注释

  注解:说明程序,给计算机看;    注释:说明程序,给人看。

二、注解定义与作用

  定义:注解又被称为元数据,是代码级别的说明,可包含包、类、字段、方法、变量说明、注释。

  作用:①编写文档:通过代码里标识的注解生成文档;

        ②代码分析:通过代码里标识的注解对代码分析;

        ③编译检查:通过代码里标识的注解让编译器实现编译检查。

三、JDK预定义的一些注解

  @override:检测该方法是否继承自父类;

  @Oeprecated:标注的内容已过时;

  @SuppressWarnings:压制警告  一般传递参数@SuppressWarning("all")。

四、自定义注解

  格式:元注解  public @interface 名称{}

  本质:一个接口,默认继承Annotation接口

  属性:接口中可以定义的成员方法。

    (1)属性返回值:基本数据类型、String、枚举、注解、上述类型的数组。

    (2)属性赋值:①定义属性,使用default初始化,使用注解不需赋值;

             ②属性名称为value,value可省略,直接定义;

             ③数组赋值,使用{}包裹,只有一个值时,{}可省略。

五、解析注解

  1、获取注解定义的位置对象;

  2、获取指定注解 getAnnotation(Class);

  3、调用注解中的抽象方法获取配置属性值。

六、练习题目

  1、比赛名单,根据题目要求自己进行名单推算,根据自己推算名单写程序

复制代码
 1 public class Lianxi17 {
 2     static char[] m={'a','b','c'};
 3     static char[] n={'x','y','z'};
 4 
 5     public static void main(String[] args) {
 6         for(int i=0;i<m.length;i++){
 7             for(int j=0;j<n.length;j++){
 8                 if(m[i]=='a'&&n[j]=='x'){
 9                     continue;
10                 }else if(m[i]=='a'&&n[j]=='y'){
11                     continue;
12                 }else if((m[i]=='b'&&n[j]=='y')||(m[i]=='b')&&n[j]=='z'){
13                     continue;
14                 }else if((m[i]=='c'&&n[j]=='x')||(m[i]=='c'&&n[j]=='y')){
15                     continue;
16                 }else{
17                     System.out.println(m[i]+"VS"+n[j]);
18                 }
19             }
20         }
21     }
22 }
复制代码

  2、菱形打印,菱形打印长度和高度为奇数为宜,使用循环进行打印

复制代码
 1 public class Lianxi18 {
 2     public static void main(String[] args) {
 3         int h=7,w=7;
 4         //上半部分
 5         for(int i=0;i<(h+1)/2;i++){
 6             for(int j=0;j<w/2-i;j++){
 7                 System.out.println(" ");
 8             }
 9             for(int k=1;k<(i+1)*2;k++) {
10                 System.out.print("*");
11             }
12         }
13         //下半部分
14         for(int i=1;i<(h+1)/2;i++){
15             for(int j=1;j<=i;j++){
16                 System.out.println(" ");
17             }
18             for(int k=1;k<=w-2*i;k++){
19                 System.out.print("*");
20             }
21         }
22     }
23 }
复制代码

 

posted on   跨越&尘世  阅读(28)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示