JAVA程序与其他进程的数据通信

1.        JAVA程序中可以用process类的实例对象来表示子进程。子进程的标准输入和输出流不在连接到键盘和显示器,而是一管道流的形式连接到父进程的一个输出流和输入流

2.        创建子进程:
a.     Runtime
类封装了运行是的环境。没给JAVA程序都有一个Runtime类的实例,使应用程序与其运行的环境相连。  一般不能实例化Runtime对象,也不能创建自己的实例,但是可以通过getRuntime获得。一旦得到了当前Runtime对象的引用,就可以调用Runtime 对象的方法控制JAVA虚拟机的状态和行为

a.        Runtime.exec()  在单独的进程中执行指定的字符串命令,返回一个Process对象,用于管理子进程

b.        Process p = Runtime.getRuntime().exec(“java Test”);  Test 是一个有入口方法的类)

 

 

3.        调用process类的getOutputStream getInputStream (得到的流对象的输入输出相对的是父进程)方法可以获得连接到子进程的输出流和输出流对象 。当然大多的对标准输入输出流的操作是通过new BufferedReader(new InputStreamReader(InputStream in))包装后实现的(输出流也一样..

4.        其实大多集成开发环境都是用的这个原理,代码的标准输出输入流与编辑器相连,而可以把输出显示在编辑器上。



输入流的缓冲区,如果放满了,则会阻塞。而不是覆盖或抛出异常

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值