网络编程 TCP UDP

进程可以有多个线程,线程支持Run方法,并发:同一时刻多个任务交替执行,简单来说就是单核CPU实现的多任务。并行:同一时刻多个任务同时执行,多核CPU可以实现并行。

启动一个子线程后,主线程会继续执行不会阻塞。

Thread.state枚举显示了线程的状态

线程同步机制:当有一个线程在对内存进行操作时,其他线程都不可以对该内存地址进行操作,知道该线程完成操作。

IO流原理及分类

字节流(一次读取一个字节8bit)

字符流(一次读取一个字符,对应字节数不定)

java 复制代码
package FileWriter;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

/**
 * @author JQY
 * @version 1.0
 */
public class Homework01 {
    public static void main(String[] args) throws IOException {
        String dirt = "d:\\mytemp";
        File file = new File(dirt);
        if(!file.exists()){
            if(file.mkdir()){
                System.out.println("目录:"+dirt+"创建成功");
            }else{
                System.out.println("目录:"+dirt+"创建失败");
            }
        }else {
            String fileName = dirt + "\\hello.txt";
            file = new File(fileName);
            if(!file.exists()){
                if(file.createNewFile()){
                    BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file));
                    bufferedWriter.write("hello,world~");
                    bufferedWriter.close();
                    System.out.println("文件"+fileName+"创建成功");
                }else {
                    System.out.println("文件"+fileName+"创建失败");
                }
            }else {
                BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file));
                bufferedWriter.write("hello,world~");
                bufferedWriter.close();
                System.out.println("文件已经存在,不能创建");
            }
        }
    }
}

背下来

网络通信

查看主机地址ipconfig

域名:www.baidu.com 将ip地址映射为域名 至于怎么映射上的见http协议

端口的范围:0~65535,常见网络程序端口号:tomcat:8080 mysql:3306 oracle:1521 sqlserver:1433

TCP/IP协议:OSI模型(分的太细了,简化应用层,表示层,运输层为应用层),TCP/IP模型。

TCP协议(传输控制协议):使用TCP协议前,须先进行TCP连接,传输前经过三次握手,比较可靠。TCP协议进行通信的两个应用进程:客户端、服务端。连接中可进行大数据量的传输。传输完毕需释放连接,效率低。

UDP协议(用户数据协议):将源、目的封装成数据包,不需要连接。每个数据包限制在64K之内,不适合传输大数据量,无连接不可靠,发送数据后无需释放资源。

Socket的理解:TCP编程(可靠),UDP编程(不可靠)

相关推荐
码智社1 小时前
JSON 零基础到资深全体系教程
java·json
峥嵘life1 小时前
Android WiFi 热点 Channel 信道 和 Frequency 频率 转换总结
android·开发语言
wgego2 小时前
基础的反序列化一些总结(php和java)
java·开发语言·笔记
冻柠檬飞冰走茶2 小时前
PTA基础编程题目集 7-8超速判断(C++语言实现)
开发语言·数据结构·c++·算法
机建狂魔3 小时前
Codex 接入第三方模型 API 实战:以 Mimo 为例
java·服务器·数据库·ai·ai编程·codex
山峰哥3 小时前
数据库工程与SQL调优:从慢查询到秒级响应的实战之路
java·开发语言·数据库·sql·深度优先·启发式算法
乐观的Terry3 小时前
11、发布系统-用户认证与权限体系
java·spring boot·spring·spring cloud·mybatis
前端开发张小七3 小时前
Java 学习笔记 · 第二课:面向对象核心(封装、继承、多态)及接口与异常
java·后端·程序员
wangjialelele3 小时前
Selenium4 + Java Web自动化测试入门指南:从环境搭建到常用操作详解
java·开发语言·前端·测试工具·自动化
Awna3 小时前
Golang 大小写可见性规范
开发语言·后端·golang