1.1.3 方法调用
让我们更仔细地看看main方法中唯一的语句:
System.out.println("Hello, World!");
System.out是一个对象,它是一个名为PrintStream的类的实例(instance)。PrintStream类有println、print等方法。这些方法被称为实例方法(instance method),因为它们对类的对象或实例进行操作。
若要在对象上调用实例方法,请使用点符号(dot notation)来表示:
object.methodName(arguments)
在这个例子中,main方法只有一个参数,即字符串"Hello, World!"。
让我们用另一个例子来试试,像"Hello, World!" 这样的字符串是String类的实例。String类有一个返回String对象长度的length方法。若要调用该方法,则需要再次使用点符号:
"Hello, World!".length()
length方法是通过对象"Hello, World!"调用的,且该方法没有参数。与println方法不同,length方法会返回一个结果。使用该返回结果的一种方法就是将它输出到屏幕:
System.out.println("Hello, World!".length());
一起来试试看。用这个语句来编写一个Java程序并运行它,看看字符串的长度是多少。
在Java中,需要自己构造(construct)大多数对象(不像System.out和"Hello, World!"这些对象,它们是已经存在的,可以直接使用)。下面是一个简单的示例。
Random类的对象可以生成随机数。可以使用new运算符来构造一个Random对象:
new Random()
在类名之后的是构造参数列表,在这个例子中该列表是空的。
你可以在构造的对象上调用方法。例如:
new Random().nextInt()
这样就可以通过这个新构造的随机数生成器,生成下一个随机整数。
如果想在一个对象上调用多个方法,那么需要将对象存储在变量中(参见1.3节)。这里我们打印两个随机数:
Random generator = new Random(); System.out.println(generator.nextInt()); System.out.println(generator.nextInt());
注意:Random类是在java.util包中声明的。为了在程序中使用这个类,需要添加import语句,示例如下。
package ch01.sec01; import java.util.Random; public class MethodDemo { ... }
我们将在第2章中更详细地了解包和import语句。