- 博客(13)
- 资源 (3)
- 收藏
- 关注
转载 Java中volatile关键字
在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile 关键字机制。 synchronized 同步块大家都比较熟悉,通过 synchronized 关键字来实现,所有加上synch
2016-10-20 10:58:03 210
转载 Java中JVM的原理
一、Java虚拟机的生命周期: Java虚拟机的生命周期 一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序。程序开始执行时他才运行,程序结束时他就停止。你在同一台机器上运行三个程序,就会有三个运行中的Java虚拟机。 Java虚拟机总是开始于一个main()方法,这个方法必须是公有、返回void、直接受一个字符串数组。在程序执行时,你必须给Java虚拟机指明这个包换main
2016-10-17 13:43:00 448
转载 JVM工作原理
一、 JVM的生命周期1. JVM实例对应了一个独立运行的java程序它是进程级别a) 启动。启动一个Java程序时,一个JVM实例就产生了,任何一个拥有public static void main(String[] args)函数的class都可以作为JVM实例运行的起点b) 运行。main()作为该程序初始线程的起点,任
2016-10-16 22:29:33 408
转载 数据库三大范式
数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。 范式说明 1.1 第一范式(1NF)无重复的列 所谓第一范式(1NF)
2016-10-16 22:01:19 289
转载 MySQL表连接
内连接: 只连接匹配的行左外连接: 包含左边表的全部行(不管右边的表中是否存在与它们匹配的行),以及右边表中全部匹配的行右外连接: 包含右边表的全部行(不管左边的表中是否存在与它们匹配的行),以及左边表中全部匹配的行全外连接: 包含左、右两个表的全部行,不管另外一边的表中是否存在与它们匹配的行。交叉连接 生成笛卡尔积-它不使用任何匹配或者选取条件,而是直接将一个数
2016-10-13 12:54:11 231
转载 面向接口编程的意义
在项目中的意义:在传统的项目开发过程中,由于客户的需求经常变化,如果不采用面向接口编程,那么我们必须不停改写现有的业务代码。改写代码可能产生新的BUG,而且改写代码还会影响到调用该业务的类,可能全都需要修改,影响系统本身的稳定性。而且为了将改写代码带来的影响最小,我们不得不屈服当前的系统状况来完成设计,代码质量和稳定性更低。当这种情况积累到一定程度时,系统就会出现不可预计的错误,代码凌乱,不易
2016-10-13 11:11:49 2839
转载 C++中指针和引用区别
一、《程序员面试宝典》的解释是:(1)非空区别。在任何区别下都不能使用指向空值的引用,但指针可为空。一个引用必须总是指向某些对象。不存在指向空值的引用这个事实意味着使用引用的代码效率 比使用指针要高。(2)合法性区别。在使用引用之前不需要测试它的合法性。相反,指针则应该总是被测试,防止其为空。(面试宝典上可能写反了?)(3)可修改区别。指针与引用的另一个重要的区别是指针可以
2016-10-12 20:46:28 472
转载 父类引用指向子类对象
父类引用指向子类对象指的是:例如父类Animal,子类Cat,Dog。其中Animal可以是类也可以是接口,Cat和Dog是继承或实现Animal的子类。Animal animal = new Cat();即声明的是父类,实际指向的是子类的一个对象。那这么使用的优点是什么,为什么要这么用?可以用这几个关键词来概括:多态、动态链接,向上转型也有人说这是
2016-10-11 11:33:14 1267 1
原创 设置session有效时间
一、 在程序中调用session的setMaxInactiveInterval方法设置 session.setMaxInactiveInterval(30 * 60); setMaxInactiveInterval设置的是当前会话的失效时间,不是整个web的时间,单位为以秒计算。如果设置的值为零或负数,则表示会话将永远不会超时。二
2016-10-10 15:51:35 24376 1
原创 回文检查
一、判断一个整数是不是回文bool IsPalindromeInt(int N){ int reverse=0,rem,temp = N; while(temp!=0) { rem=temp%10; reverse=reverse*10+rem; temp/=10; } if(rev
2016-10-06 21:22:32 587
原创 判断单链表是否有环
使用追赶的方法,设定两个指针slow、fast,从头指针开始,slow每次前进1步,fast每次前进2步。如存在环,则两者相遇;如不存在环,fast遇到NULL退出。int existsLoop(list *head){ list *slow = head, *fast = head; while (slow != NULL && fast != NULL) {
2016-10-05 16:14:54 293
原创 单例模式反射机制漏洞
一、反射漏洞单例模式五种实现方法中,除了枚举式,存在反射和反序列化漏洞,即通过反射和反序列化可以破解以上几种实现方式。在这里,我们仅举例反射漏洞以及如何避免反射漏洞。比如,懒汉式单例模式,我们可以通过反射调用私有构造器。package com.DesignPattern;//懒汉式单例模式public class Singleton { private static Singl
2016-10-04 19:51:25 2120
原创 单例模式
单例对象是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在。这样的模式有几个好处:1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。2、省去了new操作符,降低了系统内存的使用频率,减轻GC压力。3、有些类如交易所的核心交易引擎,控制着交易流程,如果该类可以创建多个的话,系统完全乱了。所以只有使用单例模式,才能保证核心交易服务
2016-10-04 16:25:51 289
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人