- 博客(17)
- 收藏
- 关注
原创 多线程
线程是CPU调度和分派的基本单位,可以充分利用CPU资源。线程生命周期线程在生命周期内存在多种状态。 NEW、RUNNABLE 、 RUNNING、 BLOCKED 、DEAD 五种状态。( I ) NEW 即新建状态,是线和被创建旦未启动的状态。 创建线程的方式有三种:第一种是继承自 Thread 类,第二种是实现 Runnable 接口,第三种是实现 Callable口。相比第一种...
2019-04-06 17:27:17 180 1
原创 HashMap源码解析
HashMap简述HashMap是线程不安全的,key 与 value 可以为 null。它的底层数据结构是 数组 称之为 bucket ,数组里存储的是 链表。在JDK8中,bucket 是数组实现,当容量达到 threshold 时会触发扩容的操作,扩容前后的容量都是2的次幂,这是为了通过hash值和数组的length计算寻找相应的哈希桶时更加高效(具体下面阐述);链表的长度达到 TR...
2019-04-06 16:02:24 182
原创 MySql使用入门 (二)
DML 语句DML 操作是对数据库中表记录的操作.插入记录INSERT INTO tablename(filed1.filed2,filed3,…,…filedn) VALUES (value1,value2,value3,…,valuen);两种方式如下:mysql> insert into emp(ename, hiredate, sal,deptno) values ('...
2019-03-30 21:56:29 189
原创 Java虚拟机重点知识总结
Java虚拟机的基本结构Java 虚拟机的框架Java虚拟机的基本结构:类加载子系统负责从文件系统或者网络中加载Class信息,加载的类信息存放于一块称为方法区的内存空间,除了类的信息外,方法区还会存放运行时常量池信息,包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射).Java 堆 在虚拟机启动的时候建立,它是Java程序最主要的内存工作区域.几乎所有...
2019-03-30 21:33:47 223
原创 面试准备知识点总结
面试准备知识点总结多线程实现方式有哪些继承Thread类创建线程实现Runnable接口创建线程实现Callable接口通过FutureTask包装器来实现Thread线程线程池start()和run()的区别Java通过调用 Thread 类的 start() 方法启动一个线程,调用 start() 方法将线程处于就绪状态,但并不是运行状态. 线程会调用run()方法来进行操作...
2019-03-30 15:02:53 157
原创 MySql使用入门 (一)
SQL分类SQL主要分为以下3个类别:DDL(Data Definition Languages)语句:数据定义语言。常用的语句关键字主要包括 create、drop、alter。DML(Data Manipulation Language)语句:数据操纵语句。常用的语句关键字主要包括 insert、delete、update和 select等。DCL (Data Control Lan...
2019-03-19 21:51:26 516 1
原创 数据结构与算法---优先队列-堆-Java
优先队列(堆)二叉堆堆序性质让操作快速执行的性质是堆序性质,由于我们想要快速找出最小元,因此最小元应该在根上。我们考虑任意子树也应该是一个堆,那么任意节点就应该小于它的所有后裔。结构性质堆是一棵完全填满的二叉树,有可能的例外是在底层,底层上的元素从左到右填入,这样的树成为完全二叉树。一个重要的发现,因为完全二叉树这么有规律,所以它可以用一个数组表示而不需要用链。该数组有一个位置0:...
2019-03-19 19:17:20 210
原创 数据结构与算法分析---树Java实现
树树的定义(递归方式)树的实现class TreeNode{ Object element; TreeNode firstChild; TreeNode nextSibling;}树的遍历先序遍历(preorder travelsal)设我们想要列出目录中所有文件的名字。输出格式将是:深度为 did_idi 的文件将被 did_idi 次跳格(ta...
2019-03-18 22:13:45 305
原创 数据结构与算法分析---散列
散列1. 散列函数如果输入的关键字是整数,则一般合理的方法就是直接返回 Key mod Tablesize。散列的函数的选择需要仔细考虑。通常保证表的大小是素数,当输入的关键字是随机数字时,散列函数不仅计算起来简单而且关键字的分配也很均匀。通常,关键字是字符串一种选择方法是把字符串的ASCII码(或 Unicode码)值加起来。public static int hash(String...
2019-03-18 22:01:23 308
原创 表、栈和队列-Java的实现
数据结构与算法分析表、栈、队列List接口、ArrayList类和LinkedList类1.1 List接口继承Collection接口public interface List<E> extends Collection<E>{ E get(int index); E set(int index,E newval); void add(...
2019-03-18 21:59:09 1248
原创 计算机网络---命令行邮箱登录发信及python实现
计算机网络套接字编程Your task is to develop a simple mail client that sends email to any recipient. Your client will need to connect to a mail server, dialogue with the mail server...
2019-03-18 21:50:39 729
原创 Gradle--构建Android App
Gradle–构建Android App用Android Studio构建一个初始化Android项目在“Android” mode可以看到如上图的gradle 项目目录。在主目录和子目录分别有一个build.gradle文件(build.gradle(Project:HelloWorldGradle和build.gradle(Module:ap))),项目中可能还会有两个gradle.p...
2019-03-18 21:41:38 706
原创 常见的几种排序算法实现
排序插入排序(简单)主要思想是从下标为1的位置开始向后走,每次插入到目标位置 public static <AnyType extends Comparable<? super AnyType>> void insertionSort(AnyType[] a){ int k; for (int i = 1; i < a.leng...
2019-03-18 21:26:00 505
原创 Windows下socket编程
socket 编程winsocket2 函数库语法SOCKET WSAAPI socket( int af, int type, int protocol);参数af地址簇规范当前支持的值是AF_INET或AF_INET6,它们是IPv4和IPv6的Internet地址系列格式。( The values currently supported are AF_INET ...
2019-03-18 21:06:05 2923
原创 计网基础总结---网络层
网络层仅在网络层提供连接服务的计算机网络称为虚电路(Virtual-Circuit, VC)网络。仅在网络层提供无连接服务的计算机网络称为数据报网络(datagram network)。虚电路网络仅在网络层提供连接服务的计算机网络称为虚电路(Virtual-Circuit, VC)网络。一条虚电路网络组成:源和目的主机之间的路径(即一系列链路和路由器)VC 号,沿着该路径的每段链路...
2019-03-18 21:01:15 685
原创 计网基础总结---运输层
运输层运输层概述运输层协议为运行在不同主机上的应用进程之间提供逻辑通信。从应用程序角度上看,通过逻辑通信,运行在不同进程的主机好像直接相连一样。网络层提供不同主机之间的逻辑通信运输层协议是在端系统而不是在路由器上。运输层两种著名的协议:TCP (传输控制协议)和 UDP(用户数据报协议)无连接的多路复用和多路分解一个UDP套接字是由一个二元组全面标识,该二元组包含一个目的IP...
2019-03-18 20:59:12 394
原创 实现Linux下 ls -lR 类似功能
实现Linux下 ls -lR 类似功能程序较大程序实现ls -lR的效果效果图如下:stat 结构体信息struct stat {unsigned long st_dev; // 文件所属的设备unsigned long st_ino; // 文件相关的 inodeunsigned short st_mode; // 文件的权限信息和类型信息 :S_IFDIR, S_IFB...
2019-03-18 20:52:35 2980
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人