Java基础
文章平均质量分 82
爱敲代码的小高
代码很难,我不怕,我就是学!
展开
-
如何创建线程
目录一:认识线程二:如何构造线程1:继承Thread类,重写run方法2:实现runnable接口,重写run方法3:使用lambda表达式创建runnable子类对象4匿名内部类方法说到线程,我们就不得不提进程。较为官方的定义,进程是系统分配资源的最小单位,这个资源可以是cpu、内存等等。线程是系统调度的最小单位。并且同一个进程下的各个线程之间是可以相互共享资源的。具体来说,举个例子,我们平时中午家里妈妈出去买菜,那么买菜就可以算是一个进程,紧接着妈妈让我们去卖鱼,她去买肉,那么这里的卖鱼和卖肉分别是买菜原创 2022-06-29 19:19:46 · 947 阅读 · 3 评论 -
四不帮你弄懂网络编程之最后一步
目录1 Http原理1.1 为啥会有应用层1.2 什么是url1.3urlencode和urldecode1.4 Http协议格式1.5 Http的方法1.6 Http的状态码最常见的状态码, 比如 200(OK), 404(Not Found), 403(Forbidden), 302(Redirect, 重定向), 504(Bad Gateway)1.7 Http常见的Header2 Http server3 session 和co...原创 2021-12-08 20:04:19 · 4526 阅读 · 16 评论 -
四步帮你弄明白网络编程之第三步
目录摘要一:UDP协议1.1 UDP的的特点1.2面向数据报1.3 UDP的缓冲区1.4UDP使用注意事项二:TCP协议2.1TCP协议段格式2.2 确认应答机制(ACK)2.3 超时重传机制2.4 连接管理机制2.4.1服务端状态转化:2.4.2客户端状态转化:2.5 滑动窗口2.6流量控制2.7 拥塞控制2.8 延迟应答2.9 捎带应答2.10 面向字节流三:TCP和UDP对比四:网络层...原创 2021-11-22 21:48:17 · 1157 阅读 · 24 评论 -
四步帮你搞定网络编程之第二步
一:基础知识点1.1源IP地址和目的IP地址在IP数据包头部中, 有两个IP地址, 分别叫做源IP地址, 和目的IP地址1.2 源端口号和目的端口号传输层协议(TCP和UDP)的数据段中有两个端口号, 分别叫做源端口号和目的端口号. 就是在描述 "数据是谁发的, 要发 给谁"; 1.3 端口号和进程id我们的端口号是唯一表示一个进程。另外, 一个进程可以绑定多个端口号; 但是一个端口号不能被多个进程绑定。1.4 认识tcp和udp协议这个建议大家翻看我前面写的文章,就不...原创 2021-10-23 16:53:15 · 308 阅读 · 27 评论 -
四步帮你搞定网络编程之第一步
目录一:初识网络协议1.1 什么叫协议1.2 打电话中的“协议”二:协议分层2.1OSI七层模型2.2TCP/IP五层(或四层)模型三:网络传输基本流程3.1网络传输流程图3.2数据包封装和分用四:网络中的地址管理4.1认识IP地址4.2认识MAC地址总结一:初识网络协议1.1 什么叫协议顾名思义,“协议”就是我们平常生活中一些心照不宣的事情,大家都公认了的事。比如,你到邻居张大爷家买肉,你俩约定好每回都买一斤,这样你下...原创 2021-10-18 20:02:02 · 991 阅读 · 26 评论 -
两步帮你搞定多线程之最后一步
目录 绪论一:线程安全问题1.1 提出问题1.2 不安全的原因1.2.1 原子性1.2.2 代码“优化”二:如何解决线程不安全的问题2.1 通过synchronized关键字2.2 volatile三:wait和notify关键字3.1 wait方法3.2 notify方法3.3 wait和sleep对比(面试常考)四:多线程案例4.1 饿汉模式单线程...原创 2021-10-10 11:28:10 · 1320 阅读 · 37 评论 -
IO流的基本原理和使用
一:用file来进行文件操作1.1 file类使用的准备java.io.File 类是一个普通的类,如果要实例化对象,则常用到两个构造方法 1.2File类常用方法-基本文件操作 代码1:检验文件是否存在package com.bittech;import java.io.File;public class FileDemo { public static void main(String[] args){ String path = "E:\\...原创 2021-10-14 21:56:03 · 1618 阅读 · 49 评论 -
两步帮你搞定多线程之第一步
目录导论:初识多线程一:动手来创建多线程1.1 创建一个主线程1.2 多线程抢占式执行二:创建线程的几个常用方法2.2继承 Thread 类2.2实现 Runnable 接口2.3 匿名类创建三:Thread的几个常见属性记:导论:初识多线程 首先,我们来讨论讨论什么叫做多线程。举个简单的例子,比如说造房子这个任务。如果只有一个人的话,他既要搬砖还得拎砂浆、搅拌水泥之类的(其他工种这里就不一一阐述了),哪怕这个工人技术再熟练,精力再旺...原创 2021-10-06 19:36:28 · 964 阅读 · 37 评论 -
不说废话之java对象的比较
目录一:为何要比较二:元素的比较1 基本类型的比较2 对象的比较三:对象的比较1 覆写基类的equal2 基于comparable接口类的比较3 基于比较器的比较四 小结一:为何要比较说到优先级队列,优先级队列在插入元素时有个要求:插入的元素不能是null或者元素之间必须要能够 进行比较,为了简单起见,我们只是插入了Integer类型,那优先级队列中能否插入自定义类型对象呢? class Card { public int rank; ...原创 2021-09-19 08:51:34 · 255 阅读 · 19 评论 -
不说废话,直接干货之java中“类和对象的爱恨情仇”
目录一:初识类和对象1:类和对象基本定义2:类和对象的实例化二:类的成员1:字段/属性/成员变量2:方法3:关于static关键字a)修饰属性b)修饰方法d)应用总结:一:初识类和对象1:类和对象基本定义简单来说,类就是一类对象的统称。而对象就是这一类具体化的一个实例。正常我们在java中是面向对象来编程的,这就将复杂的事情变简单了,只要面对一个对象就行。2:类和对象的实例化声明一个类就是创建一个新的数据类型,而类在 Java 中属于引用类原创 2021-09-10 22:41:48 · 161 阅读 · 29 评论 -
Java基础之异常的处理
一:什么是异常1初识异常 我们曾经的代码中已经接触了一些 "异常" 了. 例如: 除以 0System.out.println(10 / 0);// 执行结果Exception in thread "main" java.lang.ArithmeticException: / by zero这是数组下表越界int[] arr = {1, 2, 3};System.out.println(arr[100]);// 执行结果Exception in thread "ma原创 2021-09-01 21:58:20 · 242 阅读 · 36 评论 -
Java基础之重写和重载的区别以及多态的简单介绍
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档目录文章目录前言一、重写是什么?二、重载和重写的区别三.如何理解多态四.使用多态的好处总结前言刚换了个新的模板,头一回使用,感觉这样写出来比较简洁明了。关于重载重写多态这一块,定义较多,有时候感觉还蛮难理解的,花了两个小时,简单整理归纳了下,如有不当之处,多多指教,也希望自己越来越好。一、重写是什么?子类实现父类的同名方法, 并且参数的类型和个数完全相同, 这种情况称为 ...原创 2021-08-19 23:11:55 · 760 阅读 · 31 评论 -
Java基础之方法的调用、重载以及简单的递归
例如1. 方法的基本用法 1.1 什么是方法(method) 方法就是一个代码片段. 类似于 C 语言中的 "函数". 方法存在的意义(不要背, 重在体会): 1. 是能够模块化的组织代码(当代码规模比较复杂的时候). 2. 做到代码被重复使用, 一份代码可以在多个位置使用. 3. 让代码更好理解更简单. 4. 直接调用现有方法开发, 不必重复造轮子。例如,计算1!+3!+2!+4!+5!int sum = 0;for (int i = 1; i <= 5;原创 2021-08-13 21:00:59 · 1244 阅读 · 25 评论 -
Java基础之逻辑控制
直接进入主题,Java分为三大逻辑顺序,它们分别是顺序结构、分支结构和循环结构。第一个,首先说顺序结构,这个比较简单,主要就是代码按照书写的顺序一行一行的执行。比如System.out.println("aaa");System.out.println("bbb");System.out.println("ccc");// 运行结果aaabbbccc第二个是分支结构,代码按照要求从指定的分支运行。这里主要运用到两个语句,一个是if语句,另外一个是switch语句。关于if语句,原创 2021-08-10 21:46:47 · 332 阅读 · 23 评论