记录踩过的坑-Java
目录
运行时识别对象和类的信息
在 Java 中有两种方式可以让我们在运行时识别对象和类的信息。一种是 RTTI(运行时类型识别:Run-Time Type Identification),它假定了我们在编译时已经知道了所有的类型;另一种是我们本文要说的反射机制,它允许我们在运行时获取和使用类的信息。无论是 RTTI 还是反射,其本质都是一样的,都是去动态的获取类的信息。它们唯一不同的是,RTTI 在编译时期知道要解析的类型,而反射是在运行时才知道要解析的类型。
Field
Field是一个类,位于java.lang.reflect包下。在Java反射中Field类描述的是类的属性信息,功能包括:
- 获取当前对象的成员变量的类型
- 对成员变量重新设值
Field使用示例:
class Test{
private int a; //private field私有域
protected double b; //protected field保护域
public String c; //public field公共域
Test d; //default access field默认访问域
public static Object e; //public static field公共静态域
......
}
Java方法形参中的‘...’
如果是在方法形参里面出现数据类型后面加三个点,表示的是可变参数,即传入的参数可以随意,你传多少个参数都被放到一个列表里面。
例子:调用以下方法将会输出传入方法的每个变量。
public static void dealArray(int...arr) {
for(int i: arr){
System.out.print(i);
}
}
@link
语法格式:{@link 全路径包名#方法名(参数类型列表)}
可以链接代码,让注释看的更清楚易懂
{@link Constants#LONGLIVE} 的意思其实就是告诉你LONGLIVE参数在哪里,即在Constants类的LONGLIVE对象
java.net.NetworkInterface
此类表示由名称和分配给此接口的IP地址列表组成的网络接口。它用于标识多播组加入的本地接口。接口通常以诸如“le0”之类的名称而为人所知。
JUnit @Ignore
注解下的测试方法将被忽略,不被执行。
LinkedHashMap
LinkedHashMap继承于HashMap,跟HashMap一样,它也是提供了key-value的存储方式,并提供了put和get方法来进行数据存取。
HashMap是无序的,当我们希望有顺序地去存储key-value时,就需要使用LinkedHashMap了。
上一篇: 记录踩过的坑-Homebrew
下一篇: kali 下 pycharm专业版 安装