【Java学习笔记】10:三种系统内建的Annotation

Annotation是Java的一种特殊的注释语法。

内置的三个Annotation:

@Override、@Deprecated、@SuppressWarnings

 

@Override表示进行正确的覆写操作

package day10;
class Person
{
	public String say()
	{
		return "人在说话";
	}
}

class Student extends Person
{
	@Override
	public String say()
	{
		return "学生在说话";
	}
}

public class OverDemo {
	public static void main(String[] args) {
		Person a = new Student();
		System.out.println(a.say());
	}
}

运行结果:学生在说话

Student类继承了Person类,并且覆写了其中的say()方法,如果在Person类中@Override下覆写的say()方法名称编写错误了,就肯定不是覆写了。这时如果没有@Override编译器仍然不会报错,当用Person去创建Student对象时调用的就只能是Person中的say()方法了。


@Deprecated表示不建议使用的操作

package day10;
class Info
{
	@Deprecated
	public String getInfo()
	{
		return "Hello";
	}
}

public class TestInfo {
	public static void main(String[] args) {
		System.out.println(new Info().getInfo());
	}
}

不使用@Deprecated时:


使用@Deprecated时:


运行结果:Hello

使用@Deprecated声明只是不建议使用,如果使用的话,只是会出现警告而已。例如线程中的stop()、resume()、suspend()等方法是不建议使用的。

 

@SuppressWarnings表示压制警告。如果有一些警告信息,用它可以压制掉,从而不出现警告的提示。

一般有以下几种:

@SuppressWarnings("unchecked")

告诉编译器忽略 unchecked 警告信息,如使用List,ArrayList等未进行参数化产生的警告信息。

·  @SuppressWarnings("serial")

如果编译器出现这样的警告信息:The serializable class WmailCalendar does notdeclare a static final serialVersionUID field of type long

      使用这个注释将警告信息去掉。

·  @SuppressWarnings("deprecation")

如果使用了使用@Deprecated注释的方法,编译器将出现警告信息。

      使用这个注释将警告信息去掉。

·  @SuppressWarnings("unchecked", "deprecation")

告诉编译器同时忽略unchecked和deprecation的警告信息。

·  @SuppressWarnings(value={"unchecked", "deprecation"})

等同于@SuppressWarnings("unchecked", "deprecation")

 

参考书籍是人民邮电的《Java从入门到精通》,笔记中的部分例子和释义是基于这本书写的,也有一些来自网络。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值