- 博客(24)
- 资源 (14)
- 收藏
- 关注
转载 移位运算(部分笔试题)
一、x=a/2;等价于x=a>>1;右移则幂次变小 x=a*2;等价于x=a乘法和移位运算谁更快?按道理来说移位更快,但是现在的编译器都对这个做优化了。 扩展:x*=16,也就是左移4位!x二、分段(2段,left&right,初始时 left = 0,right = n-1,center = (left+right)/2):1、奇数,如1,2,3.=>(left,ce
2012-10-31 10:15:43 1220
转载 JAVA程序类加载及其反射机制
【IT168 技术】当调用java命令运行某个Java程序时,该命令将启动一条Java虚拟机进程,同一个JVM的所有线程,所有变量都处于同一进程里,它们都是用该JVM进程的内存区。程序运行到最后正常结束。 程序运行到使用System.exit()或Runtime().exit()代码结束程序。 程序执行过程中遇到未捕获的异常或错误而结束。 程序所在平台强制结束了JVM进程。 类的加载
2012-10-24 09:54:58 1167
转载 string,StringBuffer与StringBuilder的区别??
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全)简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改
2012-10-17 14:43:57 813
转载 Java中abstract和interface的区别
abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。 abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于 abstract class和interface的选择显得比较随意。其实,两者之间还是
2012-10-17 08:49:33 852 1
转载 Java中各种修饰符与访问修饰符的说明(稍谈内部类)
JAVA中的类只能是public 或者package的。这是符合逻辑的:人们定义类的初衷就是为了让别人用的。倘若是private,别人怎么调用?但是有一个内部类可以被定义为private。严格上说,内部类,算不得上是一种光明正大的类,内部类在某种意义上是类这个王国里的特务和地下工作者。特务和地下工作者为王国起了不少作用,但是几乎从来不敢在公众场合抛投露面。就算要露面,也要在主人(class)的同意
2012-10-17 08:33:57 1969
转载 数据库左右内外连接(详细,易懂)
JOIN: 如果表中有至少一个匹配,则返回行LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行FULL JOIN: 只要其中一个表中存在匹配,就返回行*SQL INNER JOIN 关键字在表中存在至少一个匹配时,INNER JOIN 关键字返回行。INNER JOIN 关键字语法SELEC
2012-10-16 11:13:32 1604 1
转载 Java多线程编程总结
下面是Java线程系列博文的一个编目:Java线程:概念与原理Java线程:创建与启动Java线程:线程栈模型与线程的变量Java线程:线程状态的转换Java线程:线程的同步与锁Java线程:线程的交互Java线程:线程的调度-休眠 Java线程:线程的调度-优先级Java线程:线程的调度-让步Java线程:线程的调度
2012-10-16 08:52:56 888
转载 JAVA基本数据类型长度
【注】JAVA没有unsigned类型 Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。 1、整数:包括int,short,byte,long 2、浮点型:float,double 3、字符:char 4、布尔:boolean基本型别大小最小值最大值boolean--
2012-10-15 16:00:28 865
转载 Java中接口里定义的成员变量
在interface里面的变量都是public static final 的。所以你可以这样写:public static final int i=10;或则int i=10;(可以省略掉一部分)注意在声明的时候要给变量赋予初值解释:首先你要弄清接口的含义.接口就是提供一种统一的’协议’,而接口中的属性也属于’协议’中的成员.它们是公共的,静态的,最终的常量.相当于全局常量
2012-10-15 10:11:35 1015
转载 Java线程join()方法的用处
run() 和start() 是大家都很熟悉的两个方法。把希望并行处理的代码都放在run() 中;stat() 用于自动调用run(),这是JAVA的内在机制规定的。并且run() 的访问控制符必须是public,返回值必须是void(这种说法不准确,run() 没有返回值),run()不带参数。闲话少说,我们要讲的是join(),我们首先来看个例子:
2012-10-15 09:57:21 712
转载 常见的数据库基础面试题大全
1. 数据抽象:物理抽象、概念抽象、视图级抽象,内模式、模式、外模式 2. SQL语言包括数据定义、数据操纵(Data Manipulation),数据控制(Data Control) 数据定义:Create Table,Alter Table,Drop Table, Craete/Drop Index等 数据操纵:Select ,insert,update,delete, 数据控
2012-10-13 16:41:17 795
转载 java内部类总结
内部类本文主要参照网上的一些相关文章、以及thinking in java 第三版,对java里面的内部类进行了一个较为详细的总结内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静
2012-10-13 16:15:01 689
转载 Java内存管理-Permanent Space
VM 的Permanent generation space,实际上就是方法区,存储了下面两种类型的数据: 1.Class的节本信息Package NameSuper class package nameClass or interfaceType modifiersSuper inferface package name 2.其它信息The constan
2012-10-10 11:13:30 2111
转载 探究JVM和GC
1. Java堆中各代分布:图1:Java堆中各代分布Young:主要是用来存放新生的对象。 Old:主要存放应用程序中生命周期长的内存对象。 Permanent:是指内存的永久保存区域,主要存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域. 它和和存放Instance的Heap区域不同,GC(Garbage Collectio
2012-10-10 11:12:51 1024 1
转载 Stringbuffer和StringBuilder的区别是什么
StringBuffer 与 StringBuilder 中的方法和功能完全是等价的,只是StringBuffer 中的方法大都采用了 synchronized 关键字进行修饰,因此是线程安全的,而 StringBuilder 没有这个修饰,可以被认为是线程不安全的。StringBuffer 始于 JDK 1.0StringBuilder 始于 JDK 1.5从 J
2012-10-10 10:27:19 757
转载 JVM学习笔记(一)------基本结构
原文位置:http://blog.csdn.net/cutesource/article/details/5904501从Java平台的逻辑结构上来看,我们可以从下图来了解JVM:从上图能清晰看到Java平台包含的各个逻辑模块,也能了解到JDK与JRE的区别对于JVM自身的物理结构,我们可以从下图鸟瞰一下:对于JVM的学习,在我看来这么几个部分最重要:Java代
2012-10-08 17:04:06 582
转载 Java栈与堆
Kaiwii注释:栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方区别:栈是用来保存常量的(如int,char等的基本变量的值)堆是用来保存new出来的对象的其中,有一点区别:String值,详细参考下面的内容。在栈中保存的是引用,实际上的内容还是作为一个对象保存到堆上的!!!!文章详细:1. 栈(stack)与堆(heap)都是Java用来
2012-10-08 17:03:00 600
转载 CPU寻址范围(寻址空间)一系列问题
一、什么叫寻址空间?寻址空间一般指的是CPU对于内存寻址的能力。通俗地说,就是能最多用到多少内存的一个问题。数据在存储器(RAM)中存放是有规律的 ,CPU在运算的时候需要把数据提取出来就需要知道数据在那里 ,这时候就需要挨家挨户的找,这就叫做寻址,但如果地址太多超出了CPU的能力范围,CPU就无法找到数据了。 CPU最大能查找多大范围的地址叫做寻址能力 ,CPU的寻址能力以字节为单位。通
2012-10-06 17:54:40 1315
转载 深入理解linux下用户态与核心态切换
Linux将内核程序和基于之上的用户程序分开处理,分别运行在用户态和核心态。以32位x86架构为例,虚拟空间共4G,高地址的1G为系统程序运行的核心栈,低地址的3G空间为用户程序运行的用户栈。如果一个用户程序需要调用底层的系统接口,比如printf, malloc等等诸如libc里面的系统调用函数,那么就需要牵涉到用户态与核心态的两个栈切换问题。所有的系统调用函数都是运行在核心态。在系统调
2012-10-06 12:18:58 2632
原创 二叉树笔记-理论篇
觉得关于二叉树,掌握下面的知识点应该就差不多的第一、完全二叉树与满二叉树是不一样的:1、满二叉树是完全二叉树的一种。2、两者的联系:满二叉树就是每一层都是满的,而完全二叉树,可以在最后一层右面的叶子地方有所缺失。所以,完全二叉树如果每一个节点都编号的话,那么这些编号将会与其层数一样的满二叉树的节点编号一样其他不同与相同,可以根据上面三点类推之……第二、假设度数为1的节点数目
2012-10-06 10:36:32 930
转载 PV原语小结
PV原语通过操作信号量来处理进程间的同步与互斥的问题。其核心就是一段不可分割不可中断的程序。信号量的概念1965年由著名的荷兰计算机科学家Dijkstra提出,其基本思路是用一种新的变量类型(semaphore)来记录当前可用资源的数量。有两种实现方式:1)semaphore的取值必须大于或等于0。0表示当前已没有空闲资源,而正数表示当前空闲资源的数量;2)semaphore的取值可正可负,负
2012-10-06 09:31:59 2178
转载 临界区(Critical section)与互斥体(Mutex)的区别
1、临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。2、临界区是非内核对象,只在用户态进行锁操作,速度快;互斥体是内核对象,在核心态进行锁操作,速度慢。3、临界区和互斥体在Windows平台都下可用;Linux下只有互斥体可用。1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 2、互斥量:为协调共同
2012-10-06 08:54:46 2252
转载 父类引用指向子类对象
父类引用指向子类对象指的是:例如父类Animal,子类Cat,Dog。其中Animal可以是类也可以是接口,Cat和Dog是继承或实现Animal的子类。Animal animal = new Cat();即声明的是父类,实际指向的是子类的一个对象。那这么使用的优点是什么,为什么要这么用?可以用这几个关键词来概括:多态、动态链接,向上转型也有人说这是面向接口编程,可以降低程
2012-10-06 06:52:53 74058 31
原创 补码综合理解
一、名词解释:补码:1 在计算机系统中,数值一律有补码来表示(存储). 使用补码,可以将符号位和其他位统一处理;同时,减法也可按加法来处理.另外,两个用补码表示的数据相加时候,如果最高位(符号位)有进位,则进位被舍弃.2 补码与原码的转换过程几乎是相同的数值的补码表示也分两种情况: (1)正数的补码:与原码相同. 例如,+9的补码是00001001(2)
2012-10-01 07:18:27 2027 6
维特比算法解决经典隐马尔科夫链问题的思路
2018-07-11
支持ADK开发的Arduino开发IDE(1)
2013-05-18
nutch入门经典翻译1:Introduction to Nutch, Part 1: Crawling
2011-08-20
SH(struts2+Hibernate 3)简单实现注册模块
2011-05-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人