通常情况下都是需要new一下的,调用类的静态方法的时候(就是方法用static标记的),可以不用new,直接调用,引用下楼。
关于new一下的意思申明一个内存空间存储对象,如果不new一下的话却想要实例化,那就必须利用反射机制或者克隆对象也可以实现的
可以按住Ctrl点击方法进去看源码,看是否用static修饰
其实我们也可以写一串代码来尝试:
当Student类的成员方法不加static修饰时,根本调用不出来,见下图
当Student类的成员方法加上static修饰时就可以直接调用了
所以我们在调用API的时候可以选择看源码的方法去看该api的方法是否是静态的(是否有static)
有static修饰则无需new,直接调用方法即可
这里补充一点:
在成员方法中调用成员变量,如果成员方法是静态的,那么成员变量也必须是静态的
如图:word方法是static,变量name是static->正常 变量age不是static->报错
还有一点补充:方法的返回类型是什么,那么就要用该类型去接;如下图word方法返回类型为空(void)
我用Student类型去接,那就报错
我不用任何类型去接那就正常
那么我们就可以明白,当api源码中的方法返回类型为空,我们就可以直接 类名.方法名()使用该api;