‘壹’ java中的System.in如何理解,请高手指教一下,System的意思,in的意思,in是对象吗,System是类吗
System是类没错,in是一个标准输入流对象,如从键盘输入的内容。System.in的意思就是在system类中有一个类变量变量名称是in,而这个in就是刚才说到的是一个标准输入流对象
‘贰’ System.in在JAVA中是怎么用的
一、System.in
Java在java.lang.System类中声明了3个常量in、out、err,用于实现标准输入/输出功能。 声明如下:
public final class System extends Object { public final static InputStream in = nullInputStream(); //standard input constant public final static PrintStream out = nullPrintStream(); //standard output constant public final static PrintStream err = nullPrintStream(); //standard error output constant }
InputStream类的read()方法可以从键盘接收数据,PrintStream类的print()和println()方法可以向屏幕输出数据。
由于read()方法声明要抛出IOException异常,调用它的函数要处理该异常。 实例:
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str;
str = br.readLine();
‘叁’ java 中 System.in 表示什么啊在API 查询是属于哪个类。他有什么它是一个对象吗谢谢!
java.lang.System
System 类包含一些有用的类字段和方法。它不能被实例化。
在 System 类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。
System.in “标准”输入流。
public static final InputStream in“标准”输入流。此流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指定的另一个输入源。
import java.io.InputStream;
public class SystemDemo04 {
public static void main(String[] args) throws Exception { // 所有异常 抛出
InputStream input = System.in; // 从键盘接收数据
byte b[] = new byte[1024]; // 开辟空间,接收数据
System.out.print("请输入内容:"); // 信息提示
int len = input.read(b); // 接收数据
System.out.println("输入的内容为:" + new String(b, 0, len));
input.close(); // 关闭输入流
}
}
‘肆’ java中system.in怎么用
System.in是一个很原始、很简陋的输入流对象,通常不直接使用它来读取用户的输入。
一般会在外面封装过滤流:
BufferedReader
br
=
new
BufferedReader(new
InputStreamReader(System.in));
然后调用br.readLine()方法进行读取。
‘伍’ 关于JAVA中的System.in
我只在主方法时调用abc类的name变量就可以获取输入的名字啦.同样,也适用其他类里.只需要调用abc类对象的name就可以了.
import java.io.*;
public class abc{
String name;
public abc(){
InputStreamReader is=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(is);
System.out.println("请输入顾客的姓名:");
try{
name=br.readLine();
}catch(IOException e){
System.out.println("系统错误!");
e.printStackTrace();
}finally{
try{
is.close();
br.close();
}catch(IOException e){
System.out.println("关闭流发生错误!");
e.printStackTrace();
}
}
}
public static void main(String[] args) {
abc test=new abc();
System.out.println("你输入的名字为:"+test.name);
}
}
‘陆’ Java中system in 什么意思
System.in表示标准输入设备。默认情况下,输入设备是键盘。
‘柒’ 谁能帮我解释下java 的System.in
System.in
就是读取用户输入与System.out相对
System.in
是PrintStream的一个实例
只能
按字节读取。因此默认情况下,无法读取char数据。
你可以使用
InputStreamReader
来包装
System.in对象,这样就可以
读取到
char类型了。
Java代码
InputStreamReader
in
=
new
InputStreamReader
(
System.in);
int
temp
=
in.read();
char
target
;
if(temp
!=
-1){
target
=
(char)temp;
}
当然,你可以使用
BufferedReader做进一步的包装
···
‘捌’ java system.in问题
说起来有点小复杂:
in在System类中的声明方式为“public static final InputStream in”,也就是说in是一个static的field,即in属于System这个类,而不属于某个System类的对象,实际是因为System是用final修饰的,所以你也不可能用new关键字来创建出一个System类的对象。所以,要访问in这个InputStream类型的对象,你只能用System.in这样的方式,而且用System.in这样的方式访问到的就是一个普通的InputStream类型的对象,你可以调用InputStream类里的所有实例方法(没有static修饰的方法),也可以调用InputStream类里的所有类方法(但是用对象来调用类方法是不建议这样子操作的)
InputStream类中的read方法是abstract的,但是我们通过System.in得到的不是一个直接的InputStream对象,InputStream类本身为abstract的,你也不可能创建出这个类的一个对象来,实际上,我们通过System.in得到的是某一个InputStream的子类的对象,这就是java中多态的概念,即父类的变量可以引用子类的对象。查看一下java的源文件就可以知道这个in是通过native code得到的,所以你不用过分关心它到底是什么类型的,只要知道它就是一个InputStream类的子类的对象,我们可以通过它使用所有InputStream类的方法就可以了。
‘玖’ java中的System.in是什么意思
System.in是一个很原始、很简陋的输入流对象,通常不直接使用它来读取用户的输入。
一般会在外面封装过滤流:BufferedReader br = new BufferedReader(new InputStreamReader(System.in));调用br.readLine()方法进行读取。
System.in 读取的是字节流;
InputStreamReader读取的是字符流;
BufferedReader读取的是字符串;
System.in 和InputStreamReader属于低级流;
BufferedReader属于高级流。
System类代表系统
系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。
由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。
标准输入输出, 如out、in、err
外部定义的属性和环境变量的访问,如getenv()/setenv()和getProperties()/setProperties()
加载文件和类库的方法,如load()和loadLibrary()、
快速拷贝数组的方法:array()
以上内容参考:网络-system
‘拾’ java中system.in怎么用
System.in是一个很原始、很简陋的输入流对象,通常不直接使用它来读取用户的输入。x0dx0a一般会在外面封装过滤流:x0dx0aBufferedReader br = new BufferedReader(new InputStreamReader(System.in));x0dx0a然后调用br.readLine()方法进行读取。