在Java中@符号是什么意思?

我知道出于文档目的注释中的含义,但除此之外又意味着什么?(我通常只会在Google上搜索,但结果中会显示每个非字母符号)

回答:

@符号表示Java注释。Java注释的作用是,它为变量,方法,类,接口或其他语言元素添加了特殊的属性。(可以在声明注释时进行配置)。向某事物添加注释时,程序的其他部分可以检查某事物是否具有注释。然后,它可以使用此信息来完成所需的任何工作。

让我举几个例子:

回答:

public class SuperClass {

public void someInterestingMethod() {

System.out.println("Superclass!");

}

}

public class DerivedClass extends SuperClass {

public void someInterestngMethod() {

System.out.println("Derived class!");

}

}

当您这样做时:

SuperClass sc = new DerivedClass();

sc.someInterestingMethod();

someInterestingMethod()呼叫应被动态调度,并打印"Derived

class!",对吗?好吧,派生类的方法实际上是拼写错误的,因此DerivedClass得到了自己的单独方法someInterestngMethod(),该方法与超类完全无关someInterestingMethod()。因此,someInterestingMethod()不再被覆盖,并且将调用超类的实现。

@Override关键字是为了与此帮助。它向编译器传达了您的意图,即您希望带注释的方法是祖先类方法之一的重载。如果不是(例如在这种错字情况下,或者SuperClassAPI更改并重命名了方法),则将会使您的编译失败,以提醒您注意损坏的替代项。

回答:

这是一个方法:

public void someMethod() {

int i;

}

将会有一个编译器警告说,i从未使用过。因此,您可以@SuppressWarnings在方法中添加来 禁止 显示警告:

@SuppressWarnings("unused")

public void someMethod() {

int i;

}

请注意,注释中有一个参数@SuppressWarnings。一些注释具有参数,您可以在javadoc中查找它们。但是对于那些没有参数的对象,则不需要()像方法那样添加。

您还可以声明自己的注释并使用反射进行检查。上面的2条注释将由编译器检查。

以上是 在Java中@符号是什么意思? 的全部内容, 来源链接: utcz.com/qa/434735.html

回到顶部