我是一名开始接触Java挑战的计算机科学专业的学生。我们必须编写一个错误的程序;这实际上是一个有趣的练习。我的一个同学给我发了一个补丁(英文不差),并说他给班上加了public
。我是否需要申报一个班级公众(它是唯一一个没有人会使用的班级中的班级)
这让我感到惊讶。它是重要的还是仅仅是宣布类public
的惯例。 该方案的工作,并从我的理解默认是封装私人,我认为这将是最好的蹩脚的小脚本,CS学生互相邮寄。
任何人都可以给我一些更深入的了解 - 关于Java的大部分内容,但一般的CS理论也可能证明是有洞察力的 - 也许有些术语可以用来进一步研究这些概念。
我想知道,如果我的同学更正是有效的或重要的,为什么。
编辑
抱歉,这是我原来的程序没有错误
import java.util.Scanner;
/**
* Universal hello translator
* Author: Noel Niles mail: [email protected]
*
*/
class HelloUniverse {
public static void main (String [] args)
{
/* code */
int country; //number of country from list
String name; //name of person
String greeting; //hello in different languages
Scanner key = new Scanner(System.in);
System.out.print("Where are you from?\n"+
"Enter a number from the list:\n");
//TODO(anyone): Add some more countries and greetings
System.out.print("1. Afganistan\n" +
"2. Antarctica\n" +
"3. Australia\n" +
"4. Austria\n" +
"5. Bangladesh\n" +
"6. Belgium\n" +
"7. Brazil\n" +
"8. Burma\n" +
"9. Canada\n" +
"10. Chile\n" +
"11. China\n" );
//get the country code
country = key.nextInt();
key.nextLine();
//get the users name
System.out.println("What is you name?");
name = key.nextLine();
switch (country) {
case 1: greeting = "salaam";
break;
case 2: greeting = "h-h-h-i-i thththththere";
break;
case 3: greeting = "G'day mate";
break;
case 4: greeting = "Gruss Gott";
break;
case 5: greeting = "nomoskar";
break;
case 6: greeting = "Hallo";
break;
case 7: greeting = "Ola";
break;
case 8: greeting = "mingalaba";
break;
case 9: greeting = "Good day eh";
break;
case 10: greeting = "Hola";
break;
case 11: greeting = "Nei hou";
break;
default: greeting = "Invalid country";
break;
}
//display the greeting and the users name
System.out.printf("%s %s\n", greeting, name);
}
}
我不明白。如果课堂将自己定义为一个蹩脚的脚本,并且您的唯一目标是使其工作,并且它按原样运行,那么您为什么关心其可见性修改器? – 2013-04-11 07:32:54
咦?我认为我们的意思是一样的。它只是一种节省击键。但我想知道是否有一些我打破的约定。 – noel 2013-04-11 07:35:09
我会公开一个主类,主要是让这个类出现在生成的javadoc中,从而能够知道它是一个主类,以及主方法的可接受参数。 – 2013-04-11 07:37:53