我是java语言和编程的初学者。
我理解为了从另一个类调用方法,我们用:
调用该方法ClassName.methodName(arguments);
例如,当我们想要使用Math类找到整数的平方根时:
int x = 4;
int root = (int)(Math.sqrt(x));
但是,当我们在其他类中使用某些方法时,例如String类中的charAt()方法,我们使用类似的方法访问该方法:
String str = "Greetings!";
char ch = str.charAt(0);
对于String类中的其他方法也是如此:codePointAt()和compareTo()。
为什么在使用某些类(如String类)的方法时,我们会以不同的方式调用方法?我们怎么知道何时调用这样的方法而不是其他方式呢?
谢谢!
答案 0 :(得分:3)
ow方法有两种。
您所谈论的第一个案例是静态方法。如果您阅读更多内容,您将知道无法实例化静态类。即,您无法从静态类创建对象。因此,如果静态类中有方法,则必须使用类名访问它们。非静态类中也有静态方法。
例如:想想平方根法。找到平方根是相同的过程,无论您想要找到平方根的数字。因此,无需在每次创建对象时创建平方根方法。相反,我们可以使用类名访问它。因此,这些方法有时称为class-methods
非静态方法可能需要在每次创建对象时进行实例化,因为它们是特定于对象的。
例如。想想charAt()
方法。
charAt(0)
将返回char
,具体取决于您调用它的String
对象。
阅读This question和This article也很有帮助。
答案 1 :(得分:0)
可以在类级别调用声明为static的方法。 即您不需要该类的实例来调用它们。