java概率总结
傲宇苍穹
这个作者很懒,什么都没留下…
展开
-
Front ConTroller(MVC) 前端控制器 (配生活实例解释)
前端控制器:客户在页面输入 通过HTTP协议 利用request将数据(请求))带入前端控制器前端控制器依据请求 指定对应的控制器 controller1/2/3控制器依据业务实际 进行处理后 调用业务逻辑产生数据,返回给前端控制器此时前端控制器再将这些业务数据分发给业务视图由业务视图将数据产生在业务页面中业务页面再将生成的页面返回到前端控制器,前端控制器再将业务页面反馈给用户界面换位思考方式:...原创 2018-02-20 18:34:49 · 1676 阅读 · 1 评论 -
Java中的线程会按照优先级分配CPU时间片运行,那么线程什么时候放弃CPU使用权?
1. 当前运行线程主动放弃cpu,JVM暂时放弃CPU操作(基于时间片轮转调度的JVM操作系统不会让线程永久放弃CPU,或者说放弃本次时间片的执行权),例如调用yield()方法2. 当前运行线程因为某些原因进入阻塞状态,例如阻塞在i/o上3. 当前运行线程结束,即运行完run()方法里面的任务...原创 2018-03-04 11:26:58 · 3495 阅读 · 0 评论 -
什么是线程调度
线程调度两种模式1. 抢占式模式指的是每个线程执行的时间线程切换的都由系统控制,(系统控制指的是砸系统某种运行机制下,没跳线程都分同样的执行时间篇,也可能有些线程的时间片较长,某些深圳得不到执行片)这种情况下 一个线程堵塞不会导致整个线程堵塞2. 协同式模式指某一线程执行完成后主动通知系统切换到另一个线程上执行,这种模式像接力赛一样,一个人跑完自己的路程就把接力棒交给下一个人,...原创 2018-03-04 11:26:32 · 3506 阅读 · 1 评论 -
在java中CycliBarriar和CountDonwLatch有什么区别
文章转自:http://blog.csdn.net/wangxuelei036/article/details/78038472CyclicBarrier和CountdownLatch是java 1.5中提供的一些非常有用的辅助类来帮助我们进行并发编程。这两个的区别是CyclicBarrier可以重复使用已经通过的障碍,而CountdownLatch不能重复使用。CountdownLatch: 一...转载 2018-03-04 18:37:56 · 479 阅读 · 0 评论 -
Executor框架的使用简介
文章转自:http://blog.csdn.net/qq_16811963/article/details/52161713类似于我们熟悉的集合框架(由Collection和Map接口衍生出很多其他的接口和类),在JAVA多线程中,也存在一个Executor框架。等以后时间充足了,会对该框架来一波源码剖析。简而言之,Executor框架实现了工作单元与执行单元的分离。本文用到的程序源码请参考我的g...转载 2018-03-04 18:09:54 · 309 阅读 · 0 评论 -
Join中wait和sleep方法的不同
Join中wait和sleep方法的不同 最大的区别: Wait在等待时候会释放锁 用于线程之间的交互Sleep 一直有锁 不释放 用于赞同执行 区别:1. Sleep方法是Thread类中定义的方法wait是Object类中定义的方法2. Sleep方法必须人为的指定时间wait方法既可以指定时间,也可以不指定时间3. Sleep方法时间到,线程处于...原创 2018-03-04 17:59:11 · 423 阅读 · 0 评论 -
Java多线程中join理解
Java多线程中join理解Join()定义在Thread.java中作用:让”主线程”等待“子线程”结束之后才能继续运行原创 2018-03-04 17:42:48 · 180 阅读 · 0 评论 -
Java基本数据类型转换与java基本类型转换优先级
Java基本数据类型转换与java基本类型转换优先级转换类型1. 自动类型转换: 编译器自动完成类型转换,不需要再程序中编写代码转换规则: 从存储范围小的类型到存储范围大的类型具体规则 : byteàcharàshortàintàlongàfloatàdouble2. 强制类型转换: 强制编译器进行类型转换,必须在程序中编写代码转换规则: 从存储范围大的类型存到储存范围小的类型...原创 2018-03-04 17:21:02 · 3346 阅读 · 4 评论 -
JAVA值类型和引用类型的区别
JAVA值类型和引用类型的区别定义:引用类型:表示你操作的数据是同一个,也就是说当年传一个参数给另一个方法时,你在另一个方法中改变这个变量的值,那么调用这个方法是所传入的变量的值也将改变值类型:表示复制当前的一个变量传给方法,当你在这个方法中改变这个变量的值的时候,最初生命的变量值不会改变 通俗说法: 值类型就是现金要用直接用;引用类型是存折,要用先得去银行取现 值类型基本数据类型整型 byte...原创 2018-03-04 17:06:19 · 3931 阅读 · 0 评论 -
线程与进程的区别
问题: 线程与进程的区别什么是进程,什么是线程: 系统要做一件事情,运营一个任务,所有运行的任务通常就是一个程序 每个运行中的程序就是一个进程 (可以在任务管理器中看到) 当一个程序运行时,内部可能会包含多个顺序执行流,每个顺序执行就是一个线程关于进程的特性:独立性:进程是系统中独立存在的实体,它可以拥有自己独立的资源,每个进程都拥有自己私有的地址...原创 2018-03-04 11:28:03 · 526 阅读 · 0 评论 -
抽象类与接口的区别 个人总结
抽象类与接口的区别概念上:接口是对动作的抽象,抽象类是对根源的抽象使用上:抽象类表示的是这个对象是什么例如:男人女人 这两个如果都是类的话,那么他们的抽象类是人 说明他们都是人接口表示的是这个对象能做什么例如:人可以吃东西动物也可以吃动态,那么就可以把吃东西定义为一个接口,然后让这些类去实现它一个雷只能继承一个抽象类,但是一个类可以实现多个接口 总结具体区别1. 抽象类和接口都不能直接...原创 2018-03-04 13:33:04 · 168 阅读 · 0 评论 -
业务逻辑层工作开发说明
业务逻辑层工作开发说明:1. 入参校验2. 业务流程控制3. 业务规则控制4. 交易5. 数据库和外部资源控制原创 2018-03-06 01:17:01 · 1041 阅读 · 0 评论 -
spring IOC中三种依赖注入方式 经典总结
深入浅出spring IOC中三种依赖注入方式spring的核心思想是IOC和AOP,IOC-控制反转,是一个重要的面向对象编程的法则来消减计算机程序的耦合问题,控制反转一般分为两种类型,依赖注入和依赖查找,依赖什么?为什么需要依赖?注入什么?控制什么?依赖注入和控制反转是一样的概念吗?接触新的知识,小编的脑袋中全是大大的问号,不过没有关系,今天这篇博文,小编主要来简单的介绍一下在spring I...转载 2018-03-04 23:50:19 · 893 阅读 · 0 评论 -
Spring框架主要有哪些模块
Spring框架主要有哪些模块主要七大模块介绍1. Spring AOP 面相切面编程2. Spring ORM Hibernate|mybatis|JDO3. Spring Core 提供bean工厂 IOC4. Spring Dao JDBC支持5. Spring Context 提供了关于UI支持,邮件支持等6. Spri...转载 2018-03-04 23:46:10 · 16917 阅读 · 0 评论 -
spring 总结
1.什么是springspring是一个开源框架,spring为简化企业级开发而生,使用spring可以使简单的java bean 实现以前只有EJG才能实现的功能spring是一个IOC和AOP容器框架2.spring的特点轻量级 spring是非侵入性的 - 基于spring应用的开发中的对象可以不依赖于spring的API依赖注入 DI面向切面编程 AOP容器 spring是一个容器,因为它...转载 2018-03-04 23:32:41 · 196 阅读 · 0 评论 -
使用Spring的好处
使用Spring的好处1. 轻量级框架 Spring是轻量级框架,基本的版本大约2M2. 控制反转 Spring通过控制反转实现松散耦合,对象们给它们的依赖,而不是创建或者查找依赖的对象们 方便解耦,简化开发3. 面相切面的编程 AOP Spring支持面相切面的编程,并且把应用业务逻辑和系统分开4. 容器 Spring 包含并管理应用中对象的生...原创 2018-03-04 23:30:11 · 11932 阅读 · 0 评论 -
java对象存活分析
java虚拟机总共分为五个区域,其中三个是线程私有:程序计数器,虚拟机栈,本地方法栈,两个是线程共享:堆,方法区。线程私有的区域等到线程结束时(栈帧出栈时)会自动被释放,空间比较容易清理。而线程共享的java堆和方法区中的空间较大而且没有线程的回收容易产生很多垃圾信息,GC垃圾回收真正关心的就是这部分。java堆和方法区主要存放各种类型的对象(方法区中也存储一些静态变量和全局常量等信息),那么我们...转载 2018-03-04 14:14:05 · 486 阅读 · 0 评论 -
JDK与JRE的区别 总结
JDK与JRE的区别JRE: Java Runtime EnvironmentJava运行时环境 是将要执行的java程序的虚拟机.它同时包含了执行applet需要的浏览器插件.JDK : java Development Kit java开发工具包JDK是完整的java软件开发包,包含了JRE 编译器,和其他工具 如javadoc java调试器 JVM:Java Virtual Machin...原创 2018-03-04 13:55:25 · 271 阅读 · 0 评论 -
transient的作用及使用方法 总结
transient的作用及使用方法使用transient可以避免用户的账户密码等安全信息在网络操作(主要涉及到序列化操作,本地序列化缓存也是试用)中传输作用:保证一些用户敏感信息字段仅存在于调用者的内存中而不会写到磁盘里持久化 即只要实现Serilizable接口,将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会序列化到制定的目的地中 使用方法说明:1. ...原创 2018-03-04 13:46:36 · 2655 阅读 · 0 评论 -
java 多线程并发系列之 生产者消费者模式的两种实现
生产者消费者模式是并发、多线程编程中经典的设计模式,生产者和消费者通过分离的执行工作解耦,简化了开发模式,生产者和消费者可以以不同的速度生产和消费数据。真实世界中的生产者消费者模式生产者和消费者模式在生活当中随处可见,它描述的是协调与协作的关系。比如一个人正在准备食物(生产者),而另一个人正在吃(消费者),他们使用一个共用的桌子用于放置盘子和取走盘子,生产者准备食物,如果桌子上已经满了就等待,消费...转载 2018-03-04 08:29:55 · 280 阅读 · 0 评论 -
java 多线程并发之生产者消费者模式的两种实现
生产者消费者模式是并发、多线程编程中经典的设计模式,生产者和消费者通过分离的执行工作解耦,简化了开发模式,生产者和消费者可以以不同的速度生产和消费数据。真实世界中的生产者消费者模式生产者和消费者模式在生活当中随处可见,它描述的是协调与协作的关系。比如一个人正在准备食物(生产者),而另一个人正在吃(消费者),他们使用一个共用的桌子用于放置盘子和取走盘子,生产者准备食物,如果桌子上已经满了就等待,消费...转载 2018-03-04 01:06:50 · 23436 阅读 · 2 评论 -
HashTable HashMap TreeMap 本质区别与使用区别 个人解析
HashTable HashMap TreeMap 本质区别1. hashTable 线程安全 不允许有null的键和值 效率低 方法是Synchronized的 HashTable 数组默认大小是11 增加方式为 old*2+1 HashTable 使用Enumeration(枚举)方式实现2. HashMap 线程不安全 允许有nul...原创 2018-03-03 22:13:01 · 380 阅读 · 0 评论 -
HashMap 精华个人总结
图片源自网络HashMap的数据结构数据结构是通过数组和链表实现的对数据储存链表特点:寻址困难,插入删除容易数组特点:寻址容易,插入删除难哈希表: 链表的数组 默认链表长度 16疑问:如果两个key通过hashMap得到相同的index 会不会覆盖解答:这里要补充一个属性,hashMap 有 key value next 三个属性其中 next 是指index相同的 通过next 连接在一起...原创 2018-03-03 21:55:22 · 339 阅读 · 0 评论 -
Vector ArrayList LinkedList区别 深度分析 自我总结
Vector ArrayList LinkedList区别1. 同步性Vector 线程安全备注(源码中,Vector底层方法上面有加synchronized)ArrayList LinkedList 线程不安全 2. 数据增长模式ArrayList Vector 是使用Objcet数组来储存当元素需要扩展的时候 Vector长度会自动增长一倍,ArrayList增加50%长...原创 2018-03-03 19:51:10 · 1543 阅读 · 1 评论 -
String , StringBuffer , StringBuilder有什么区别 深度解析 个人总结
性能方面: StringBuilder>StringBuffer>String(for)循环里面字符串拼接线程安全:StringBuilder(非线程安全,速度快) StringBuffer (线程安全,速度慢)如何选择:方法内无线程安全问题,选择StringBuilder 有线程安全问题,使用StringBuffer 如果使用:当连接几个String 时候,使用String.conc...原创 2018-03-03 19:25:00 · 187 阅读 · 0 评论 -
Apache、Tomcat、JBoss、WebLogic的区别与关系
转载自:http://foohsinglong.iteye.com/blog/1195780概述: Apache:全球应用最广泛的http服务器,免费,出自apache基金组织 Tomcat:应用也算非常广泛的web服务器,支持部分j2ee,免费,出自apache基金组织 JBoss:开源的应用服务器,比较受人喜爱,免费(文档要收费) Weblogic:应该说算是业界第一的app ...转载 2018-03-03 18:44:20 · 2981 阅读 · 0 评论 -
JSP九大内置对象 四大作用域 自我总结
JSP内置对象的含义是可以直接在JSP页面中使用对象,使用前不需要声明他们四大作用域JSP九大内置对象 out out 对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区。 request response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。 response 传递服务器响应信息 ex...原创 2018-03-03 07:39:27 · 259 阅读 · 0 评论 -
MVC 讲解 个人理解清晰说明
概念理解:MVC model-view-controllerModel模型层业务数据信息的显示关注支撑业务的信息构成,通常是多个业务实体组合构成包含 : 实体类entity 属性抽象 ; View视图层 实现数据呈现 提供界面Controller控制层通过调用业务逻辑产生合适的数据传递模型层生产调取数据给视图层用于呈现深度思考MVC是一种架构模式程序分层,分工合作,相互独立且相互合作程序分层解...原创 2018-02-20 18:52:29 · 3016 阅读 · 3 评论 -
Java字节流和字符流的区别 (方法区别 操作基本单元区别 操作方式区别 处理数据类型区别) 之个人总结
Java字节流和字符流的区别1. 方法区别字节流 InputStream OutputStream字符流 Reader Writer2. 操作的基本单元区别字节流操作基本单元为字节 字符流操作的基本单元为Unicode3. 操作方式的区别字节流不使用区缓冲区(内存),即使不关闭资源(使用close方法)文件也可以输出字符流使用缓冲区,不关闭资源(使用close方法)不...原创 2018-03-03 22:25:13 · 718 阅读 · 0 评论 -
内存泄露和内存溢出的区别 (概念区别 产生原因区别 及解决办法) 个人整理
内存泄露和内存溢出的区别概念区别内存溢出 : out of memory 指程序在申请内存时,没有足够的内存空间供其使用,出现out fo memory 比如申请一个integer 但给它存了long才能存下的数那就是内存溢出内存泄露 : memory leak 指程序在申请内存后,无法释放已经申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后的结果很严重,无论多少内存,迟早会被占光即为:...原创 2018-03-03 22:59:48 · 9991 阅读 · 0 评论 -
List 如何去除重复数据 三个方法操作原理
原理:1. 把List集合中所有元素放到Set集合(Set集合不允许重复,重复会进行校验),然后再把Set放回List集中中 此方法不能保证元素顺序解决办法: 使用ArrayList 建立二重循环 ArrayList获取原有List集合使用ArrayList第一层循环获取ArrayList依次获取每一个元素,使用ArrayList获取每一个List元素,检查ArrayList1中元素是否...原创 2018-03-04 01:03:26 · 1539 阅读 · 0 评论 -
JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式)
在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的。但是在一些情况下, new操作符直接生成对象会带来一些问题。举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的对象之前必须先生成一些辅助功能的对象。 在这些情况,新对象的建立就是一个 “过程”,不仅是一个操作,像一部...转载 2018-03-04 00:49:07 · 133 阅读 · 0 评论 -
传统动态代理模式与cglib动态代理模式区别
转载自:http://blog.csdn.net/qq_27093465/article/details/53340513关于动态代理模式里面有两种实现,一种是jdk实现,一种是cglib来实现。下面来整jdk来实现动态代理的Java实例。jdk动态代理模式里面有个拦截器的概念,在jdk中,只要实现了InvocationHandler这个接口的类就是一个拦截器类。还使用了些反射的相关概念。拦截器的...转载 2018-03-04 00:45:18 · 219 阅读 · 0 评论 -
单例模式的七中写法
定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式结构图: 单例模式有多种写法各有利弊,现在我们来看看各种模式写法。1. 饿汉模式public class Singleton { private static Singleton instance = new Singleton(); private Singleton (){ } ...转载 2018-03-04 00:32:12 · 525 阅读 · 0 评论 -
JVM内存模型及垃圾回收算法
JVM内存模型总体架构图Run-Time Data AreasThe Java Virtual Machine defines various run-time data areas that are used during execution of a program. Some of these data areas are created on Java Virtual Machine st...转载 2018-03-03 23:28:29 · 189 阅读 · 0 评论 -
Synchronized与重入锁ReenTrantLock的区别 个人总结
Synchronized与重入锁ReenTrantLock的区别 ReenTrantLock比Synchronized多了三个功能1. 等待可中断在持有锁的等待线程尝试集不释放锁的时候,等待线程可以选择放弃等待2. 公平锁按照申请锁的顺序来一次获取锁称为公平锁,但synchronized是非公平锁,ReentrantLock可以通过构造函数实现公平锁3. 绑定多个Co...原创 2018-03-03 23:23:42 · 2807 阅读 · 0 评论 -
Synchronized实现原理 个人整理
Synchronized实现原理 主要作用1. 确保线程互斥的访问同步代码块2. 保证共享变量的修改及时可见3. 有效解决重排序问题主要作用位置Synchronized 是对象锁1. 修饰普通方法2. 修饰静态方法3. 修饰代码块工作原理 : 每个对象有一个监视器锁moitor 当monitor被占用的时候就处于锁定状态线程执行mon...原创 2018-03-03 23:12:45 · 1503 阅读 · 0 评论 -
HTTP 常用的方法是什么,各自含义是什么?
HTTP 常用的方法是什么,各自含义是什么?http是面相连接的 安全可靠的 无状态的应用层访问协议GET 从服务器获得资源POST 客户端向服务器提交资源PUT 修改服务器相关资源 (已经很少用)DELETE 删除服务器相关资源 (已经很少用) ...原创 2018-03-06 01:17:50 · 1990 阅读 · 0 评论