System.in是为了监听系统的输入(比如键盘输入),有输入了,Scanner才能根据输入帮你解析数据。具体什么时候要加参数,这个就看你使用的类的构造方法了,你需要调用有参数的构造方法,就要传入构造需要的参数
System.in是一个标准输入流对象Scanner添加它为参数,是把Scanner与标准输入关联起来,这样Scanner就可以通过键盘读入数据了同样的,若你想从文件读入数据,你则可以通过一个文件对象(new File)将Scanner与文件关联