02 2021 档案
摘要:1. 如何判断垃圾可以回收 (1)引用计数算法:引用时,计数+1,引用失效,计数-1,零时回收;缺点是遇到互相引用导致都不为零 (2)可达性分析算法(Java用):扫描堆中的对象,沿着GC Root对象为起点的引用链看能否找到该对象,如果能则其仍然存活,不能则判定为可回收的对象。 可作为GC Roo
阅读全文
摘要:1. 直接内存(Direct Memory)是一个数据缓冲区,属于操作系统内存,不由jvm管理 2. 特点:常用于NIO(ByteBuffer分配的就是直接内存),分配回收成本较高,但读写性能高 3. 正常文件读写过程:磁盘文件 -> 系统缓冲区 -> java缓冲区(new Byte[]) 直接内
阅读全文
摘要:1. 基本概念 线程的引入是为了增加并发度,线程成为了程序执行流的最小单位,也是基本的CPU执行单元 进程是除CPU之外的系统资源的分配单元,一个进程里可以并发多个线程 2. 它们的区别 进程具有独立的地址空间,而线程没有; 进程切换运行环境时,系统开销大,而一个进程内的线程间切换系统开销小; 线程
阅读全文
摘要:1. 程序计数器 线程私有,是一个记录着当前线程所执行的字节码的行号指示器 2. Java虚拟机栈 线程私有,每个方法在执行的同时都会创建一个栈帧,用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法从调用直至执行完成的过程,就对应着一个栈帧在虚拟机栈中入栈到出栈的过程。 3. 本地方
阅读全文
摘要:1. java.util.Date (1)两个构造器 Date date1 = new Date(); Date date2 = new Date(10000000L); (2)两个方法 toString():获取当前的年月日时分秒 getTime():获取当前Date(创建时)到1970.1.1的
阅读全文
摘要:1. 构造代码块:用{}裹起来的代码片段,构造块在创建对象时会被调用,每次创建对象 时都会被调用,并且优先于类构造函数执行。 构造块中定义的变量是局部变量。 2. 静态代码块:用static{}裹起来的代码片段,只会被执行一次(第一次加载此类时执行,比如说用Class.forName("")加载类时
阅读全文
摘要:URI:通用资源标志符,就是给一个网络资源起一个名字 URL:统一资源定位符,一个确定的地址路径
阅读全文
摘要:1. 为什么要序列化 当需要把对象存入文件或数据库,或想使用socket在网络上传输对象时,需要序列化。 也就是把对象变成一种可保存的形式。 字节序列还原成Java对象就是反序列化。 2. Serializable接口没有方法,只是标识
阅读全文
摘要:1. 什么是AOP (1)面向切面编程(方面),利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得 业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 (2)通俗描述:不通过修改源代码方式,在主干功能里面添加新功能 (3)举例:权限判断,日志记录,异常处理 2. AOP
阅读全文
摘要:1. IOC 思想基于 IOC 容器完成, IOC 容器底层就是对象工厂 2. 图解IOC底层原理 3. Spring提供的IOC容器实现的两种方式(两个接口) (1)BeanFactory接口:IOC容器基本实现,是Spring内部人员使用的接口(加载配置文件时候不会创建对象,在获取对象时才会创建
阅读全文
摘要:1. C++程序在执行时,将内存大方向划分为4个区域 代码区:存放函数体的二进制代码,由操作系统进行管理的 全局区:存放全局变量和静态变量以及常量 栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收 2. 程序运行前 (1)
阅读全文
摘要:多态:多态发生在有继承的场景,基类指针调用函数时,根据对象类型不同执行不同的函数,这个特性叫多态 1. 在C++中,使用父类引用指向子类对象时,如果执行的函数是普通函数,则属于地址早绑定,即使传入的是子类的对象,也会执行父类的方法! class Animal{ public: void speak(
阅读全文
摘要:1. 无论向上转型还是向下转型,都需要有继承关系,否则编译器报错! 向上转型:子类型转向父类(自动类型转换) 向下转型:父类型转向子类(强制类型转换,需要加强制类型转换符) 2. 什么是多态? 多态是同一个行为具有多个不同表现状态的能力。 多种状态,编译时是一种状态,运行时是另一种状态。 编译时,是
阅读全文
摘要:1. Java5之后,支持基本数据类型与包装类型的互相转换,即自动装箱与自动拆箱 2. 做加减乘除运算时会自动拆箱,而==比较不会 Integer x=1000; Integer y=1000; System.out.println(x==y);//false// ==比较的是x和y的地址,两个对象
阅读全文
摘要:1. 优先级队列,即堆,定义为priority_queue<Type, Container, Functional> Type 就是数据类型,Container 就是容器类型,Functional是比较方式 //小顶堆 priority_queue <int,vector<int>,greater<
阅读全文
摘要:2021/2/8 1. OSI七层模型,TCP/IP四层模型,五层模型 OSI:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层 TCP/IP:网络接口层,网际层,传输层,应用层 五层:物理层,数据链路层,网络层,传输层,应用层 2. 三次握手(TCP建立连接) 第一次握手: 客户端发送S
阅读全文

浙公网安备 33010602011771号