日期:2014-05-20  浏览次数:20757 次

刚开始学编程,请问这段代码哪里错了?
import   java.io.*;
public   class   PipeStreamTest
{
public   static   void   main(String   []   args)
{
try{
Thread   t1=new   Sender();
Thread   t2=new   Receiver();
PipedOutputStream   out=t1.getOutputStream();
PinedInputStream   in=t2.getInputStream();
out.connect(in);
t1.start();
t2.start();
}

catch(Exception   e)
{
System.out.println(e.getMessage());
}
}
}

class   Sender   extends   Thread
{

private   PipedOutputStream   out=new   PipedOutputStream();
public   PipedOutputStream   getOutputStream()
{
return   out;
}
public   void   run()
{
String   s=new   String( "hello,receiver,how   are   you ");
try
{
out.write(s.getBytes());
out.close();
}
catch(Exception   e)
{
System.out.println(e.getMessage());
}
}

}
class   Receiver   extends   Thread
{
private   PipedInputStream   in   =new   PipedInputStream();
public   PipedInputStream   getInputStream()
{
return   in;
}
public   void   run()
{
String   s=null;
byte[]   buf   =new   byte[1024];
try
{
int   len=in.read(buf);
s=new   String   (buf,0,len);
System.out.println( "the   follow   message   comes   from   sed=nder:\n "+s);
in.close();
}
catch(IOException   e)
{
System.out.println(e.getMessage());
}

}
}

------解决方案--------------------
Thread t1=new Sender();
Thread t2=new Receiver();
改为:
Sender t1=new Sender();
Receiver t2=new Receiver();
PinedInputStream改为:PipedInputStream
张孝祥Java 就业培训教程 上代码有的有错误,最好看视频!