Java内存分配与管理是Java的核心技术之一,今天我们深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域:◆寄存器:我们在程序中无法控制◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中◆堆:存放用new产生的数据◆静态域...
分类:
编程语言 时间:
2014-05-10 08:13:00
阅读次数:
387
解析:从事先规定好的格式中提取数据前提:提前约定好格式。XML解析DOM :Document
Object Model解析 原理: 一次性读入整个XML 以栈的方式解析每一个标签,开标签入栈 关标签出栈 当栈中没有任何元素的时候解析结束 优点:
一次解析出全部数据 而且有明显的层级关系缺点:当XML...
分类:
移动开发 时间:
2014-05-10 00:48:31
阅读次数:
358
有时候,我们跟踪某个函数的时候,不知道这个函数是哪个函数调用的,当然对代码比较熟悉的话,直接看代码就可以了,但如果不熟悉,则可以使用2个方法:1、使用traceview来查看,但使用过程中,有些机器无法列出当前运行的进程,无法跟踪2、在该函数添加打印堆栈的log,可以直接打印出调用关系。Log.e(...
分类:
移动开发 时间:
2014-05-10 00:18:56
阅读次数:
532
继昨天自学中应该注意的事项之后,今天再来聊一下java中容易出现的基本问题吧。
首先基本类型和它的包装类我就不多说了,但是值得注意的是String,首先它并不是基本类型,其次它被定义为final类型(也就是说不可集成),为什么要把String定义为final
?,网上也有很多答案,比较好的答案是:主要是为了“效率” 和 “安全性” 的缘故。若 String允许被继承, 由于它的高度被使用率,...
分类:
其他好文 时间:
2014-05-09 22:56:20
阅读次数:
313
很多人有疑问,java有很好的垃圾回收机制,怎么会有内存泄露?其实是有的,那么何为内存泄露?在Java中所谓内存泄露就是指在程序运行的过程中产生了一些对象,当不需要这些对象时,他们却没有被垃圾回收掉,而且程序运行中很难发现这个对象,它始终占据着内存却没有发挥作用。
我举这样一个例子,在现实开发中我们需要自定义一个先进后出的栈集合,代码如下:
{CSDN:CODE:335808}
这个代码...
分类:
编程语言 时间:
2014-05-09 22:39:10
阅读次数:
412
进程间的通信(1)
进程间的通信IPC(InterProcessCommunication )主要有以下不同形式:
半双工管道和FIFO;全双工管道和命名全双工管道;消息队列,信号量和共享存储;套接字和STREAMS
管道
pipe函数
当从一个进程连接到另一个进程时,我们使用术语管道。我们通常是把一个进程的输出通过管道连接到另一个进程的输入。
管道是由调用pipe函数创建的:
#i...
分类:
系统相关 时间:
2014-05-09 22:33:56
阅读次数:
566
快速选择算法,就是从给定的一个集合S={a1,a2,...an}中选出第K个大小的数,或者给出其所在的下标之类的。
如果使用排序,比如merge_sort,然后返回第K个元素的下标,复杂度是O(NlogN)
如果使用heap_sort,或者优先队列,则复杂度是O(NlogK)
如果使用quick _sort的一个变种,叫 quick select,则平均复杂度为O(N),最坏复杂...
分类:
其他好文 时间:
2014-05-09 20:48:02
阅读次数:
841
一.介绍
HandlerThread继承自Thread,当线程开启时,也就是它run方法运行起来后,线程同时创建了一个含有消息队列
的Looper,并对外提供自己这个Looper对象的get方法,这就是它和普通Thread唯一不同的地方。
二.好处
为什么要使用HandlerThread。1.开发中如果多次使用类似new
Thread(){...}.start...
分类:
移动开发 时间:
2014-05-09 14:59:31
阅读次数:
429
递归实现当然太简单,也用不着为了ac走这种捷径吧。。非递归实现还挺有意思的。
树的非递归遍历一定要借助栈,相当于把原来编译器做的事情显式的写出来。对于中序遍历,先要访问最左下的节点,一定是进入循环后,不断的往左下走,走到不能走为止,这时候,可以从栈中弹出访问的节点,相当于“左根右”过程的“根”,然后应该怎么做呢?想一下中序遍历完根节点之后应该干嘛,对,是走到右子树中继续重复这个过程,但是有一点,...
分类:
其他好文 时间:
2014-05-09 14:57:08
阅读次数:
211
在我们做多进程应用开发的过程中,难免会遇到多个进程访问同一个资源(临界资源)的状况,必须通过加一个全局性的锁,来实现资源的同步访问(同一时间只能有一个进程访问资源)。...
分类:
数据库 时间:
2014-05-09 13:55:33
阅读次数:
580