Java复习
coderchem
这个作者很懒,什么都没留下…
展开
-
Java内存分配和运行机制
Java的内存分配 Java的内存分为两种,一个是堆内存,这个是栈内存。 堆内存 堆内存是用于存放Java中的数组和由new创建的对象。他满足先进先出,后进后出的存放方式。最后会由GC垃圾回收机制来清理缓存。堆内存属于动态存放,不需要自己提前开辟内存,但是速度比较慢。 栈内存 栈内存是用于存放Java中的基本类型的变量和对象的引用变量、函数等。他满足栈的的存放方式。也会由GC回收。堆内存...转载 2018-09-25 10:30:36 · 1191 阅读 · 0 评论 -
spring面试题
1、Spring是什么? Spring是一个轻量级的IoC和AOP容器框架。是为Java应用程序提供基础性服务的一套框架,是目前很流行的框架之一。 它主要有7个模块:core 、aop、context、dao 、orm、mvc、web这个七个。 Spring Core:核心类库,提供IOC服务; Spring Context:提供框架式的Bean访问方式,以及企业级功能(JNDI、定时任...转载 2019-08-12 18:51:52 · 244 阅读 · 0 评论 -
Springmvc拦截器
Spring 的拦截器主要是实现了Interceptor接口,实现了preHandler、postHandle、aftercompletion这三个方法。 package org.springframework.web.servlet; public interface HandlerInterceptor { boolean preHandle( ...转载 2019-08-13 14:05:23 · 103 阅读 · 0 评论 -
牛客上的JAVA错题集合
DBMS事务的四大特性 数据库事务的四大特性分别是:原子性、一致性、隔离性和持久性。 特性 说明 实现 一致性 在一个事务执行之前和执行之后数据库都必须处于一致性状态。假如数据库的状态满足所有的完整性约束,也可以说数据库是一致的 DBMS的完整性子系统实现 原...原创 2019-07-24 14:31:17 · 269 阅读 · 0 评论 -
手撕HashMap
package map; import java.util.LinkedList; /** * 步骤: 1:定义一个链表数组 。 * 2:写put方法,获取key的hashCode%数组长度。 判断hashcode对应的数组下标对应的linkedList是否为空, * 如果为空就创建一个一个链表 把key、 value放入linkedList中,再把linkedLis...原创 2019-03-21 23:49:09 · 1154 阅读 · 0 评论 -
String 和 ==
对于String 和 == 的渊源我要从两个点说起: 首先就是 String 为常量的时候(String 的定义被final过): String a = "a"; String b ="a"; a==b true 这是因为"a"第一次String的时候被放进了常量池 ,第二次被创建的时候发现有了,就直接找到"a"的地址引用给b 所用 a和b的地址就相等啦~ St...原创 2019-03-18 12:59:18 · 222 阅读 · 0 评论 -
手撸ArrayList
package List; import java.util.ArrayList; import javax.swing.text.StyledEditorKit.ForegroundAction; public class MyArrayList<E> { //定可变数组 private Ob...原创 2019-03-21 16:38:39 · 3599 阅读 · 0 评论 -
ClassLoader怎么加载class
ClassLoader即类加载器,负责将 .class 文件(可能在磁盘上, 也可能在网络上) 加载到内存中, 并为之生成对应的Java.lang.Class 对象,当 JVM 启动时,会形成由三个类加载器组成的初始类加载器层次结构:bootstrap classloader ——> extension classloader ——> system classloader boots...转载 2019-03-18 10:19:16 · 1394 阅读 · 0 评论 -
纯手写LinkedList
package List; import java.util.HashMap; import java.util.LinkedList; import java.util.List; public class MyLinkedList<E> { private Node<E> first; private Node<E> last; private...原创 2019-03-21 15:06:38 · 1081 阅读 · 0 评论 -
JVM线程共享和非线程共享分区
大多数 JVM 将内存区域划分为Method Area(Non-Heap)(方法区),Heap(堆),Program Counter Register(程序计数器),VM Stack(虚拟机栈,也有翻译成JAVA 方法栈的),Native Method Stack(本地方法栈),其中Method Area和Heap是线程共享的,VMStack,Native M...转载 2019-03-17 16:12:14 · 618 阅读 · 0 评论 -
equals和hashCode 和==的区别
java中equals,hashcode和==的区别 1、== java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型 byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==),比较的是他们的值。 2.引用类型(类、接口、数组) 当他们用(==)进行比较的时候,比较的是他们在内存中的存放地...转载 2019-03-17 15:39:52 · 84 阅读 · 0 评论 -
JAVA面试题集锦
1、Java跨平台的原理? 不同的操作系统是有自己的一套代码运行的环境的,而java为了使得java代码能在不同版本的操作系统上运行,java提供了应对不同版本的操作系统的JVM,来实现java接口,这样这样就屏蔽了不同操作系统之间的差异,使得Java程序能在任意平台上运行。 2、简单搭建一个java运行环境? 运行一个java,首先我们需要配置好jdk,然后对“JAVA_HOME” 进行配...原创 2019-03-16 11:45:37 · 707 阅读 · 0 评论 -
Java中的运算符
Java中的运算符 java中的yun运算符基本只要注意哪些比较不常见的,容易出错的运算符就行。 1、三目运算符 运算符为 ?: 列如 int x = 10>5?10:5 解释是将较大的数赋值给x 2、取余 运算符号是 % 表示取得一个余数 3、与操作 与操作分为普通与和短路与。 普通与(&)的特点:所有的判断都要判断...原创 2018-09-25 21:45:26 · 183 阅读 · 0 评论 -
Java中的变量
1.以数据类型为依据划分 1.1 8种基本数据类型 (4种整型+2种浮点型+1种字符型+1种逻辑型) 2.以声明的位置为依据划分转载 2018-09-25 11:06:27 · 91 阅读 · 0 评论 -
使用Socket进行文件的传输
客户端: import java.io.*; import java.net.Socket; /** * @author coderchem * @create 2019-09-27 21:49 */ public class Client { public static void main(String[] args) throws IOException { ...原创 2019-09-27 22:24:25 · 1631 阅读 · 0 评论