import java.io.*;class PipStreamTest
{
public static void main(String [] args)
{
Sender sd=new Sender();
Receiver rc=new Receiver();
PipedOutputStream pos=sd.getOutPutStream();
PipedInputStream pis=rc.getPipedInputStream();
pos.connect(pis);
sd.start();
rc.start();
}
}class Sender extends Thread
{
private PipedOutputStream out=new PipedOutputStream();

public PipedOutputStream getOutPutStream()
{
return out;
}

public void run()
{
try
{
out.write("my name is huruitao".getBytes());
out.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}class Receiver extends Thread
{
Private PipedInputStream pis=new PipedInputStream();

public PipedInputStream getPipedInputStream()
{
return pis;
}

public void run()
{
byte[] buf=new byte[100];
try
{
int len=pis.read(buf);
System.out.println(new String(buf,0,len));
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
这段代码编译是出错,偶实在是找不出来,请帮偶看看

解决方案 »

  1.   

    import java.io.*;public class PipStreamTest
    {
    public static void main(String [] args)
    {
    Sender sd=new Sender();
    Receiver rc=new Receiver();
    PipedOutputStream pos=sd.getOutPutStream();
    PipedInputStream pis=rc.getPipedInputStream();
    try {
                pos.connect(pis);
            } catch (IOException e) {
                // TODO 自动生成 catch 块
                e.printStackTrace();
            }
    sd.start();
    rc.start();
    }
    }class Sender extends Thread
    {
    private PipedOutputStream out=new PipedOutputStream();

    public PipedOutputStream getOutPutStream()
    {
    return out;
    }

    public void run()
    {
    try
    {
    out.write("my name is huruitao".getBytes());
    out.close();
    }
    catch(Exception e)
    {
    e.printStackTrace();
    }
    }
    }class Receiver extends Thread
    {
    private PipedInputStream pis=new PipedInputStream();

    public PipedInputStream getPipedInputStream()
    {
    return pis;
    }

    public void run()
    {
    byte[] buf=new byte[100];
    try
    {
    int len=pis.read(buf);
    System.out.println(new String(buf,0,len));
    }
    catch(Exception e)
    {
    e.printStackTrace();
    }
    }
    }
      

  2.   

    楼主的代码主要错误地方有2个1、pos.connect(pis);   要进行异常处理的,你的程序中没有。2、访问权限private  不是 Private.
    private PipedInputStream pis=new PipedInputStream();