进入java通信阶段快一个月了 ,最初的感觉通信是一个很高深,很难懂,很有技术的知识体系,因为在学习之前接触过通信的小项目,看着感觉一头雾水,但是从开始学习之后发现其实通信并没有想象的那么难
其实开始的迷惑主要是怎么通过网络进行连接,并没有怎么去考虑通信的机理。
从开始的一些命令逐渐的了解了网络通信的基础知识,逐渐的有了 一些网络通信的思想,脑袋里对于通信的理解思路也越来越有条理。
从开始的:ping 用来测试对于一个已知的链接是否 建立(ping www.baidu.com )
telnet+ip+端口 是查看端口是不是开启或者连接上已知的IP的端口号
tracert 域名或者IP 是查看链接这个网站经过了哪个端口
(tracert www.baidu.com )
netstat 是查看机器的端口连接状态和跟其他地址连接的状态
知道了一些基本的方法,对于通信的神秘很深奥感也慢慢的变得淡了,开始逐渐的去思考通信的一些基本的机理。其实对于网络通信与平时我们的一些方法没有什么区别,唯一的不同是,机器接到的信息不再是自己在电脑上输入的,或者不是自己的电脑上原有的,而机器得到的信息是从一个专有的通信的通道传入进去给机器来执行
说白了其实网络通信我们在客户端或者是服务器上所做的事情如果独立起来就是相当于我们以前接触的file里面的用文件输入输出流向文件里输入和输出事情。而想把它当做一个网络通信我们还需要做的就是怎么把我们在客户端或者是服务器上想要写入的文件的信息通过一个特定的方式来传给对方,让对方得到我们要写入的数据。
而在java中提供了一个方法来创建一个服务器
ServerSocket server = new ServerSocket(port);(这里的port是要开的端口号)
对于端口号我们的理解其实就是一段缓存,而因为我们用的32位机最大的位数就是 65535所以端口号的范围就是(0,65535)其中对于(0,1024)是系统的运行所占 用的端口号
Socket client = server.accept() ;
这个方法就是当有客户端接入前 让服务器阻塞或者等待着客户端的接入
通过 // 创建输入流
InputStream in = sort.getInputStream();
// 创建输出流
OutputStream ou = sort.getOutputStream();
来得到客户端和服务器之间的通道的输入和输出流
这样建立了连接之后我们所要做的就是之前我们做的文件的写入和写出。
java的学习到通信阶段渐渐的有了自己的想法和自己的思路。对于java的编程也慢慢地理解深入了
分享到:
相关推荐
### 黑马程序员入学Java精华总结 #### 一、Java概述与基础知识 1. **何为编程?** - 编程是指通过编写计算机能够理解的指令来解决问题或完成特定任务的过程。这些指令通常被组织成算法,并使用某种编程语言实现。...
总结来说,"JAVA网络通信系统的研究与开发"涵盖了Java网络编程的多个方面,包括TCP/IP协议的理解、Java网络API的使用、系统架构设计、并发处理和安全性等方面的知识。通过深入学习这个项目,开发者不仅能提升网络...
**第一阶段:Java基础** - **Java开发介绍**:理解DOS命令,掌握JVM(Java虚拟机)、JRE(Java运行环境)和JDK(Java开发工具包)的关系,学会安装JDK并配置环境变量。 - **基本语法**:学习Java的注释、标识符命名...
### Java最新面试总结知识点 #### 一、面向对象分析(OOA) 面向对象分析(OOA)是在系统开发过程中的一个重要阶段,它基于系统业务调查资料,并采用面向对象的思想来进行分析工作。OOA的主要任务是从收集到的信息...
### Java全阶段综合笔试面试题知识点解析 #### 一阶段:基础知识点 1. **JRE、JDK、JVM的关系** - **JRE** (Java Runtime Environment): 包括了Java虚拟机(JVM)及Java核心类库,是运行Java程序所需的环境。 - **...
总结,开发Java版的微信小游戏狼人杀是一项综合性的工程,涵盖了Java编程、游戏逻辑设计、UI制作、网络通信等多个领域。开发者需要具备扎实的编程基础,良好的逻辑思维,以及一定的美术和设计能力。通过不断地学习和...
《Java语言程序设计》课程总结报告是对学习Java编程语言的全面回顾和提炼,涵盖了Java的基础知识、核心概念以及一些高级特性。以下是对课程内容的详细解释: 1. **编程语言基础知识**:Java是一种面向对象的高级...
从华东交通大学软件学院的学生在2012年为期六周的软件工程实训中提交的“软件工程实训(Java)总结报告”中,我们可以提炼出以下关键的IT知识点: ### 软件工程实训概述 软件工程实训是针对软件工程专业学生进行的...
### Java高级工程师面试总结 #### Java基础 - **Hashtable和HashMap的区别**: - `Hashtable`是线程安全的,而`HashMap`不是。这意味着在多线程环境中使用`Hashtable`时无需额外的同步措施,但这也使得其性能较低...
### Java精华总结 #### 一、Java概述与基础知识 ##### 1. 何为编程? 编程是一种通过编写计算机可以理解的指令来解决问题的过程。这些指令是按照特定的语法规则组织起来的,用来指导计算机执行特定任务。 ##### ...
### CoreJava(java入门教程总结) 本教程旨在为Java初学者提供一份全面且深入的基础学习资料。作为一门广泛应用于各类软件开发的语言,Java以其强大的功能、跨平台的能力以及丰富的类库支持,成为许多开发者首选的...
本教程主要针对Java2阶段的学习,旨在帮助初学者深入理解和掌握Java的核心概念与实践技巧。 一、面向对象编程基础 Java是一种面向对象的编程语言,其核心思想是类、对象和封装。在这一部分,你需要理解如何定义类,...
总结来说,Java小型Basic编译器是一个结合了Java技术和Basic语言特点的编程工具,它简化了编程入门的难度,同时利用Java的跨平台优势,使得用户可以在多种操作系统上编写和运行Basic程序。开发这样一个编译器涉及...
7. **输入/输出流**:Java的I/O流系统是处理数据输入和输出的基础,包括文件操作、网络通信等。学习InputStream和OutputStream的层次结构,以及Reader和Writer用于处理字符流。 8. **多线程**:Java内置了对多线程...
Java提供了多种流类(如InputStream、OutputStream等)用于处理输入/输出操作,支持文件读写、网络通信等功能。使用流可以高效地进行数据传输和存储。 #### 十二、集合框架 Java的集合框架包括List、Set、Map等...
总结,通过这个"java小程序开发"的实验,学习者将理解Servlet如何作为服务器端程序处理HTTP请求,如何在实际Web应用中配置和使用Servlet,以及如何编写和调试Servlet代码。实践这样的小实例是掌握Java Web开发的关键...
- **堆**:分为新生代和老年代,新生代又细分为Eden区、SurvivorFrom和SurvivorTo,用于不同阶段的对象分配和垃圾回收。 - **方法区**:存储类的静态变量、常量和元数据,Java 8后被元空间取代。 **集合类** Java...
总结,Java Applet与浏览器的通信是通过多种方式实现的,包括参数传递、JavaScript交互、LiveConnect以及利用AppletContext。然而,由于安全性和现代Web技术的发展,Java Applet已不再是首选的Web交互技术,但理解其...
标题和描述均提到了“十年总结,一个JAVA人的十年人生路”,这不仅是对个人职业生涯的回顾,更是对JAVA编程及软件开发领域深入理解和经验分享的集合。从标题和描述中,我们可以提炼出以下核心知识点: ### 1. 编程...
Java广泛应用于各种设备,包括但不限于移动通信设备、智能卡、ATM机、个人电脑、服务器及大型主机等。其应用形式多样,包括: 1. **Java Application**:传统的客户端/服务器(C/S)架构应用。 2. **Java Applet**:...