- 博客(20)
- 收藏
- 关注
原创 关于学习ssm框架中的问题1
当junit4配置的test项目时,在重启后,target中的spring*.xml配置文件,会自动删除,debug时候会报错Caused by:org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [sp
2018-03-23 10:13:10
280
原创 使用 idea 配合 githubdesktop 桌面版开发
最近 在学习ssm框架,想把自己写的代码上传到github上 下载githubdesktop桌面客户端,对于windows 的同学来说感觉炒鸡方便,当然我是一只菜鸡- -,用来炒的那种。重点1:下载了github桌面端后 如果上传代码什么的无需再下载git点击file 再点击Addlocal respository 相信聪明的大家应该知道怎么操作在项目被导入github后
2018-03-22 17:31:52
2086
4
转载 java面试重点5:集合框架
一、集合框架图简化图:说明:对于以上的框架图有如下几点说明1.所有集合类都位于java.util包下。Java的集合类主要由两个接口派生而出:Collection和Map,Collection和Map是Java集合框架的根接口,这两个接口又包含了一些子接口或实现类。2. 集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。3. 抽象
2018-02-28 15:04:09
167
转载 java面试重点4.1:多线程
首页所有文章资讯Web架构基础技术书籍教程Java小组工具资源前言多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要,下面跟我一起开启本次的学习之旅吧。正文线程与进程1 线程:进程中负责程序执行的执行单元线程本身依靠程序进行运行线程是程序中的
2018-02-27 19:07:51
153
转载 java面试重点4:多线程
引如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。很多人都对其中的一些
2018-02-26 20:25:52
164
转载 java面试重点3:jvm的内存调优
首先需要注意的是在对JVM内存调优的时候不能只看操作系统级别Java进程所占用的内存,这个数值不能准确的反应堆内存的真实占用情况,因为GC过后这个值是不会变化的,因此内存调优的时候要更多地使用JDK提供的内存查看工具,比如JConsole和Java VisualVM(jvisualvm)。对JVM内存的系统级的调优主要的目的是减少GC的频率和Full GC的次数,过多的GC和Full GC
2018-02-26 19:11:32
2591
1
转载 java面试重点2 垃圾回收机制
垃圾回收机制的意义Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用空闲的内存。不过,Java即使有了GC仍然会出现内存泄漏的情况,这个我们最后在进行讨
2018-02-26 18:57:20
212
转载 java面试重点1:jvm的内存管理机制
2.1 方法区方法区存放了要加载的类的信息(如类名,修饰符)、类中的静态变量、final定义的常量、类中的field、方法信息,当开发人员调用类对象中的getName、isInterface等方法来获取信息时,这些数据都来源于方法区。方法区是全局共享的,在一定条件下它也会被GC。当方法区使用的内存超过它允许的大小时,就会抛出OutOfMemory:PermGen Space异常。在
2018-02-26 12:38:34
198
转载 think in java 阅读笔记(类的加载和实例化)
public class ClassLoadingTest { static String staticString=getStaticString(); //静态成员变量 private String privateString=getPrivateString();//普通成员变量 public ClassLoadingTest() { Syste
2017-11-26 15:13:32
127
转载 工厂模式 学习笔记
【http://www.360doc.com/content/11/0824/17/3034429_142983837.shtml】这两天突然想学学java源代码,不过看到一篇文章说看java源代码要先看设计模式,这样更容易理解源代码的结构,所以就准备学学java设计模式,首先当然是看java创建模式的工厂模式了,刚开始直接看抽象工厂模式是什么意思,百度百科的实在是看不懂,后来又在网上看了
2017-11-20 19:25:24
146
转载 模板方法模式
1. 概述 定义一个操作中的算法的骨架,而将步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义算法的某些特定步骤。2. 模式中的角色 2.1 抽象类(AbstractClass):实现了模板方法,定义了算法的骨架。 2.2 具体类(ConcreteClass):实现抽象类中的抽象方法,已完成完整的算法。3. 模式解读 3.1
2017-11-20 17:34:15
145
转载 synchronization(同步)的理解
thread是线程,synchronization是同步。同步和多线程的关系:1.没有多线程环境就不需要同步。2.即使有多线程环境也不一定需要同步。 一旦一个线程处于一个标记为synchronized的方法中,那么在这个线程从该方法中返回之前,其他所有要调用类中任何标记为synchronized方法的线程都会被阻塞。 每个对象都有一个单一的锁,这个锁本身就是对象的一部分。当
2017-11-20 15:31:49
5514
转载 hashmap 与hashtable区别(学习工厂模式笔记)
1 HashMap不是线程安全的 HashMap是map接口的子类,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。HashMap允许null key和null value,而hashtable不允许。2 HashTable是线程安全。HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主
2017-11-20 15:24:17
224
转载 java编译器原理 javac
javac编译的过程 javac 是一种编译器,能将一种语言规范转化成另外一种语言规范,通常编译器都是将便于人理解的语言规范转化成机器容易理解的语言规范,如c/c++或者汇编语言都是将源代码直接编译成目标机器码,这个目标机器代码是cpu直接执行的指令集合。这些指令集合也就是底层的一种语言规范。 javac的编译器也是将java这种对
2017-11-19 19:43:49
835
转载 JDK动态代理实现原理
JDK动态代理实现原理博客分类: java 之前虽然会用JDK的动态代理,但是有些问题却一直没有搞明白。比如说:InvocationHandler的invoke方法是由谁来调用的,代理对象是怎么生成的,直到前几个星期才把这些问题全部搞明白了。 废话不多说了,先来看一下JDK的动态是怎么用的。 Java代码 package
2017-11-19 16:09:15
124
原创 java反射学习 总结
理解反射的核心1: 在于理解java中一切都是对象,都有类。 除了常量。 2:理解运行时和编译时的区别(区分 编译时和运行时的标准是 class文件是否生成.)反射的目的:是使用反射机制来动态加载类。获得类的所有相关信息。Java的反射机制是在编译并不确定是哪个类被加载了,而是在程序运行的时候才加载、探知、自审。使用在编
2017-11-18 23:38:56
192
转载 学习笔记 学习jvm 原理 最基本概念(编译与运行概念)
Java编译时与运行时很重要的概念。编译期和运行期进行的操作是不相同的,编译器只是进行语法的分析,分析出来的错误也只是语法上的错误,而运行期在真正在分配内存。编译时是调用检查你的源程序是否有语法错误,如果没有就将其翻译成字节码文件。即.class文件。运行时是java虚拟机解释执行字节码文件。基础概念编译时 编译时顾名思义就是正在编译的时候.那啥叫编译呢
2017-11-18 18:53:22
150
转载 jvm编译运行(2)
Java代码编译是由Java源码编译器来完成,流程图如下所示:Java字节码的执行是由JVM执行引擎来完成,流程图如下所示: Java代码编译和执行的整个过程包含了以下三个重要的机制:Java源码编译机制类加载机制类执行机制Java源码编译机制Java 源码编译由以下三个过程组成:分析和输入到符号表注解处理语义分析和生成cla
2017-11-18 18:43:00
131
转载 jvm编译运行(1)
Java程序编译和运行的过程(在学习反射机制的时候 ,对于动态代理和静态代理的区分,需要深层次的理解。) Java整个编译以及运行的过程相当繁琐,本文通过一个简单的程序来简单的说明整个流程。 如下图,Java程序从源文件创建到程序运行要经过两大步骤:1、源文件由编译器编译成字节码(ByteCode) 2、字节码由j
2017-11-18 18:29:11
173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人