java 基础语法补充 (java 注解)

很久没有写过JAVA程序了,发现有很多已经忘了,重新整理一遍,主要写一下容易遗忘的东西。

数据类型

数定义时可以直接指定 二进制0b 八进制0 十六进制0x
例:

int i = 10;      //十进制
int j = 010;     //八进制
int k = 0x10;    //十六进制
int o = 0b10;    //二进制

JAVA 中的浮点数机制特殊,在开发中应该避免使用浮点数进行比较。(使用BigDecimal类)

字符类型:

char i = '\u0061';     // 等于 i = a  Unicode 编码中0061所代表的的字符

流程控制

使用 Scanner 进行输入

Scanner scanner = new Scanner(System.in);     
//定义一个扫描器对象,用于接收键盘数据
if(scanner.hasNext()){}  
scanner.hasNextInt()   //判断是否有整数
scanner.hasNext....()
//判断用户有没有输入字符
String str = scanner.next();    //输入,遇空格结束
String str = scanner.nextLine();    //输入,读入一整行,遇回车结束
int i = scanner.nextLineInt();      //输入一个整数
int i = scanner.nextLine...();      //输入一个...
scanner.close();      //凡是属于IO流的类如果不关闭就会一直占用资源

方法

可变参数:

public static void add( double a,int... i)   //i变成了数组,数组的长度和值都取决于调用

注解

这块在很多地方都没有讲解,但在框架和项目上都会出现,作为一个重点。

内置注解:
1.@Override --用于修辞重写方法,表示一个方法打算重写超累中的另一个方法的声明
2.@Deprecated --此注释可以用来修辞方法,类,属性,表示不建议使用这样的元素,通常这样是危险的或者存在更好的选择
3.@SuppressWarnings --用来抑制编译时的警告信息

元注解:用来提供对其他自定义注解的说明
1.@Target --用于描述注解的使用范围,包括:
(1)TYPE --类,接口,枚举类型
(2)FIELD --字段
(3)METHOD --方法
(4)PARAMETER --参数
(5)CONSTRUCTOR --构造器
(6)LOCAL_VARIABLE --本地变量
(7)ANNOTATION_TYPE --注解类型
(8)PACKAGE --包
(9)TYPE_PARAMETER --类型参数
(10)TYPE_USE --用户类型
2.@Retention --表示需要在什么级别保存注解信息(生效),包括:
(1)SOURCE --只在源码生效
(2)CLASS --在源码和编译的类里生效
(3)RUNTIME --在运行时也有效
总体而言RUNTIME>CLASS>SOURCE
3.@Document --表示该注解将被包含在Javadoc中
4.@Inherited --说明子类可以继承父类中的该注解

自定义一个注解如下:

public class Test3{
    //注解可以显示赋值,如果没有默认值,我们就必须给注解一个值
    @MyAnnotation(age = 20,id = 031740000)
    public void test(){}
}


//定义一个注解
//Target可以用在方法,类中
//Retention 只在源码中生效
//Documented 注解将显示在doc文档中
//Inherited 子类讲可以继承父类的注解
@Target(value = {ElementType.METHOD,ElementType.TYPE})
@Retention(value = RetentionPolicy.CLASS)
@Documented
@Inherited
@interface MyAnnotation{
       //注解的参数格式: 参数类型 + 参数名 + ();
    //如果参数名是value,可以省略
    int age();
    int id() default -1;
    //如果默认值为-1,代表不存在
    String[] name() default {"熊铁树"};
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值