黑马程序员-------网络编程

---------------------- android培训java培训、期待与您交流! ----------------------

网络的三要素:
IP  端口  传输协议

传输协议:

UDP和TCP协议

TCP/IP协议

OSI模型和TCP/IP模型

 

IP地址对象:

InetAddress `

InetAddress  ia=InetAddress.getLocalHost(); //创建地址对象

System.out.println(ia.getHostAddress);

System.out.println(i.toString());


 UDP:

将数据及源和目的封装成数据包中,不需要建立连接。    每个数据大小限制在64K内。   因无连接是不可靠协议。   不需要建立连接,速度快。

 

UDP (send:发送数据)

 //创建udp服务,通过DatagramSocket对象。
  DatagramSocket ds=new DatagramSocket();
  byte[] buf="heima liuqi wo lai le".getBytes();
  
  DatagramPacket dp=new DatagramPacket(buf, buf.length, InetAddress.getByName("192.168.1.104"),10000);
  ds.send(dp);
  ds.close();

 

UDP(receive:接收数据)

 DatagramSocket ds=new DatagramSocket(10000);
  
  byte[] buf=new byte[1024];
  
  DatagramPacket dp=new DatagramPacket(buf, buf.length);
  
  ds.receive(dp);
  
  //通过数据方法获取数据信息。
  String ip=dp.getAddress().getHostAddress();
  
  String data=new String(dp.getData(),0,dp.getLength());
  
  System.out.println(ip+":"+data);
  
  ds.close();

TCP:

建立连接,形成传输数据的通道。   在连接中进行大数据量传输。  通过三次握手完成连接,是可靠协议。  必须建立连接,效率会稍低。

  tcp:分为客户端和服务端;

客户端的对象是Socket

服务端的对象是ServerSocket

 Socket:客户端

  Socket s=new Socket("192.168.1.101",10000);
     
   OutputStream out=s.getOutputStream();
  
   out.write("黑马六期我来了".getBytes());
  
   s.close();
 }

ServerSocket :服务端

 ServerSocket ss=new ServerSocket(10000);
  
  Socket s=ss.accept();
  
  InputStream in=s.getInputStream();
       
  byte[] buf=new byte[1024];
  
  int len=in.read(buf);
  
  System.out.println(new String(buf,0,len));
  
  s.close();
 }

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值