我刚刚接受了我制作的所有程序都必须以此开始。然后我正在看一个例子#2 here关于随机数的生成。
import java.util.Random;
/** Generate random integers in a certain range. */
public final class RandomRange {
public static final void main(String... aArgs){
log("Generating random integers in the range 1..10.");
int START = 1;
int END = 10;
Random random = new Random();
for (int idx = 1; idx <= 10; ++idx){
showRandomInteger(START, END, random);
}
log("Done.");
}
private static void showRandomInteger(int aStart, int aEnd, Random aRandom){
if (aStart > aEnd) {
throw new IllegalArgumentException("Start cannot exceed End.");
}
//get the range, casting to long to avoid overflow problems
long range = (long)aEnd - (long)aStart + 1;
// compute a fraction of the range, 0 <= frac < range
long fraction = (long)(range * aRandom.nextDouble());
int randomNumber = (int)(fraction + aStart);
log("Generated : " + randomNumber);
}
private static void log(String aMessage){
System.out.println(aMessage);
}
}
我注意到它有一个公共(public)静态空和一个私有(private)静态空。为什么不在 public static void 下将代码合并为一件事呢?更重要的是,这些意味着什么?我做了研究,发现“类(class)”这个词经常出现。什么是类(class)?我希望我的问题符合指导方针,这是我第一次在这里发帖。谢谢。
最佳答案
我假设您在这里问这个问题是因为您想要一个简洁的答案来给您一些直觉,而不是深入了解 OOP您可以从教程中获取。
类
是构建对象的模板。然而,直到你明白OOP ,class
只是您正在编写的命令式代码的必要包装,因为 Java 要求所有代码都位于类中。
public
表示该方法可公开访问。在该类以外的类中定义的方法可以访问它。 private
具有相反的含义。
static
意味着这是一个类级函数,不依赖于该类的任何特定实例。
void
表示该方法不返回任何内容。
您当然可以将所有代码放在一个方法下,但这至少会带来以下问题。
- 代码更难阅读,因为代码的意图被实现的细节隐藏了。
- 代码更难重用,因为当您在多个位置需要相同的功能时,您必须复制并粘贴。
关于java - 公共(public)静态无效是什么意思?什么是类(class)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36217198/