七天零基础学java(第六天)--io多线程--网络编程--XML--注解
| 多线程 |
|
【】程序进入内存就成为了进程;进程,是正在进行的程序的缩写。进程进入内存就会配置相关资源。 程序是静态的,存储在硬盘;进程是动态的,在内存、
【】一个进程进一步细分为多条需要执行的任务,每条线(执行路径多少条)就是线程。 【】有的程序只有一条线程,叫单线程;有的程序有多条线程,叫多线程。 【】为什莫多线程,cpu解决任务速度太快,其他配合设备响应速度跟不上,cpu太闲, 所以多找点活给cpu干, 线程,是cpu任务调度执行的基本单位。
【】程序中无论有多少个线程,都会有一个主线程,主线程就是main方法
|
|
【】速成阶段只学习继承Thread类,感受线程如何争抢资源的 |
|
【】想要搞几个其他的线程,就是想要搞几个其他的线程对象,线程对象要依托于线程类 【】构建线程类: 1构建一个线程类:public class TestThread 2想要具备多线程的能力,类名后附带 extends Thread 3线程对应的任务放到run方法中,run方法属于重写Thread里面的方法(输入run后,删去大括号内容重写) 4重新定义run里面的逻辑,线程任务:输出10个数
|
|
【】多线程的逻辑 1main方法的第一个程序首先执行完毕后,再执行下一个程序。----此时只有一个线程 2线程对象建立后strat运行后,就多了一个线程,;参与之后程序运行的资源争夺。直到这个任务运算完关闭线程 3子线程对象和主函数在子线程之后的程序进行多线程资源争夺。
【】创建子线程对象后,使用start方法启动。 |
|
主线程任务按照顺序执行,这是主线 线程对象启动,只是争夺主线程资源,无法结束主线程的执行
|@-----------------------。 ------@----------|------------------@-----------------。 |@---------------。 |
|
【】网络:两台或两台以上计算机组成网络 【】ip简单理解为设备地址即可(设备地址号) 【】设备上有众多用用程序,每个应用也有个号,就是端口号,端口号用于识别不同的应用。(应用号)
【】七层iso协议只在理论,现行四层tcp/ip模型。 【】程序员在应用层层次,向下接触传输层两个协议tcp、udp。快速课程只学tcp协议
|
|
【】对于应用层的程序员来说,他们通过套接字实现网络通信
|
|
【1】自己和自己进行通信------单向通信 客户端通过套接字发送信息,服务器端接收响应。 需要服务器先启动处于接收状态才能收到客户端发来的信息。 【客户端程序】
【】先建立套接字对象,套接字就像File 套接字安装输出流, 利用输出流write方法发出信息 从下依次关闭流、网络 【】在客户端上,套接字需要录入服务器的ip字符串和端口号 ip通过命令行ipconfig来找(ip配置)ipv4的数串
|
|
【服务器】
【】服务器套接字并启动accept方法接收 【】套接字套上输入流 【】调用输入流读入方法 【】自下依次关闭流、网络 |
|
【2】自己和自己进行通信------双向通信 【】服务器端 【】服务器端在接收后,原来套接字套上输出流调用输出流方法 多关闭新开的两个输出流
【】客户端
【】利用套接字,套上输入流,利用输入流的读取,读入信息 【】关闭多开的两个流 |
|
【】是一种语言,有自己的规则 【】标记,就是标签,<a></a>这就是a标签,<a>开始+</a>结束,构成一组标签。HTML也是标签语言。 【】是可自己定义的一组标签,而HTML规定好的、预定义的一组标签
【】xml就是纯文本,需要相应程序才能利用
【】第一行这句,写不写都行。写就一定要写对,粘贴复制就好。这句话意思是:定义1.0版本,编码格式utf-8 基本程序中编码格式都是utf-8 可以在src新建File文件,命名为studens.xml 注释<!-- -->
【】文件中必须要有元素,标签就是元素, 第一个标签就是根标签,其他标签都要放到根标签里面作为根标签的子标签 【】标签里面可以加id这类元素,需要双引号括起来
|
|
【】xml确实做不了什么事情,只能结构化一些数据。 想要后续做一些读取,必须对xml做解析。
|
|
【】将dom4j的jar包引入idea 1在模块里面新建一个文件夹:选中模块文件--new--directory--命名为lib(jar包都放在lib下面) 2把jar包复制到文件夹内:将jar包ctrlc,然后在lib文件夹ctrlv,点击同意,就复制过来了。但此时还无法使用 3运行这个jar包:选中domj4文件,右键,点击add as library后,domj4文件左侧出现折叠号,才能使用 |
|
【】建立一个包,创建一个类,对xml进行操作 |
|
![]() |
|
【】搞一个解析器 【】解析器读取xml文件,这个xml文件包装为文档对象 【】文档获取根元素---students 【】对students的子元素进行遍历,获取student,(it1指向student 【】获取子元素名,获取子元素属性进行遍历,对子元素的子元素进行遍历 |
|
【】hasNext()相当于指针,判断这个水平线下是否还有下一个元素 next()获取hasNext()指向的这个元素内容,并将hasNext()下移一位
【】hasNext在物体上平面,has指向物体中间 |
|
【】注解不是注释,可以被读取,但是不会改变原来的代码逻辑,只是嵌入一些补充信息 【】加上@后和注释用法一样 【】在快速阶段学的注解简单,深入后很重要
【】注解至少告诉别人这部分是用来搞什么的,比如@Override告诉我们这是重写,同时起到一个检查的作用 |


































浙公网安备 33010602011771号