cheesepudding
cheesepudding
全部文章
Java
J2EE(3)
实习&项目&书单(1)
工具(7)
数据库(1)
算法与数据结构(1)
计算机网络(1)
问题回放(1)
归档
标签
去牛客网
登录
/
注册
cheesepudding
记录一些零碎的片段。
全部文章
/ Java
(共10篇)
Java并发(二)
1. Java内存模型(JMM) Java内存模型以及happens-before规则 1.1 主内存与工作内存 所有的变量都存储在主内存中,每个线程还有自己的工作内存,工作内存存储在高速缓存或者寄存器中,保存了该线程使用的变量的主内存副本拷贝。线程只能直接操作工作内存中的变量,不同线程之间的变量值...
2019-10-02
0
814
Java并发(一)
1. 线程基础知识 1.1 线程与进程的区别 Ⅰ 拥有资源:进程是资源分配的基本单位,但是线程不拥有资源,线程可以访问隶属进程的资源。 Ⅲ 系统开销:由于创建或撤销进程时,系统都要为之分配或回收资源,如内存空间、I/O 设备等,所付出的开销远大于创建或撤销线程时的开销。类似地,在进行进程切换时,涉...
2019-10-02
0
604
Java基础
1. 数据类型 1.1 基本类型 boolean/1 byte/8 char/16 short/16 int/32 float/32 long/64 double/64 1.2 包装类型 基本类型都有对应的包装类型,基本类型与包装类型之间的赋值自动使用自动装箱和拆箱完成。 Integer x =...
2019-10-02
0
1272
Java虚拟机
1. 内存区域 下图和下面谈论的是jdk1.6的内存区域 1.1 线程私有 1.1.1 程序计数器 当前线程所执行的字节码的行号指示器 1.1.2 Java虚拟机栈 每个 Java 方法在执行的同时会创建一个栈帧用于存储局部变量表、操作数栈、常量池引用等信息。随着方法的调用和结束调用而执行出栈入栈...
2019-10-02
0
484
Java-集合
Java-集合 标签(空格分隔): Java 1. 概述 容器主要包括 Collection 和 Map 两种,Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。 1.1 Collection 1)Set TreeSet:基于红黑树实现,支持有序性操作,例...
2019-10-02
0
676
Java-lambda表达式
# Java-lambda表达式标签(空格分隔): Java lambda表达式是Java8中添加的一个新特性,代替匿名内部类,可以极大的减少代码冗余,提高可读性,是Java的一个语法糖。下面针对lambda表达式,一步步讲述lambda表达式的一般写法,和简洁写法(方法引用),以及Java8提供...
2019-10-02
0
760
Java-泛型
Java-泛型 标签(空格分隔): Java 1. 泛型基础 1.1 泛型类 在编写普通类的时候,我们往往会固定一种类型,例如: public class Box { private String object; public void set(String object) { t...
2019-10-02
0
537
Java-反射&注解
Java-反射&注解 标签(空格分隔): Java 反射机制允许我们在运行时发现和使用类的信息,反射机制是由Class对象与java.lang.reflect类库进行支持的,Class对象获取类信息,reflect类库提供相应的操作。 1. Class对象 每个类都有一个Class对象,C...
2019-10-02
0
589
JavaIO
Java-IO 标签(空格分隔): Java 掌握三点:熟悉I/O类库结构、常用I/O类的功能、掌握如何利用装饰模式进行I/O类的组装 1. I/O系统概览 Java 的 I/O 大概可以分成以下几类: 磁盘操作:File 字节操作:InputStream 和 OutputStream 字符操作...
2019-10-02
0
1499
Java编码
Java-编码 标签(空格分隔): Java 在开发过程中我们往往会遇到很多中文乱码的问题,而要解决这个问题无非抓住编码和解码的一致性问题,但理解其背后的原因及定位问题,还需要了解现有的编码基础知识。 1. 词汇概念 1.1 编码与解码 数据在计算机中存储格式都是用0和1表示的。编码是信息从一种形...
2019-10-02
0
1058