①HashSet是采用HashMap来实现的;这个HashMap的key就是放进HashSet中的对象,value就是一个Object类型的对象
②当调用HashSet的add方法时,实际上是想HashMap中增加了一行(key-value对),该行的key就是往HashSet增加的那个对象,该行的value就是一个Object类型的常量。
③HashMap底层采用数组来维护
④调用增...
分类:
编程语言 时间:
2014-07-22 23:05:34
阅读次数:
364
Java的泛型是什么呢, 就是类型的参数化,也就是原本该是确定类型的地方换成了变量,把类型的确定时间向后延迟了。
在之前,学过“重载”的概念,重载是什么呢,举例来说
public class Test{
// 处理整型数据
void receive(int i) {
System.out.println("Received one int data");
System.ou...
分类:
编程语言 时间:
2014-07-22 23:04:34
阅读次数:
324
final类型的成员变量初始化值:
1、声明时候直接赋值
2、构造方法中赋值,如果一个类中有多个构造方法,就要保证在每个构造方法中都要完成对final类型变量的初始化工作
3、静态final成员变量必须在声明时赋值,且不能在构造方法中赋值
4、final成员变量指的是引用不能改变,即该变量的引用不能在指向其他的对象,但是对象的内容是可以改变的,比如stringbuffer可以通过append、remove等对该对象的内容作出改变。...
分类:
编程语言 时间:
2014-07-22 23:03:14
阅读次数:
348
1、进程与线程的区别
进程是程序的一次动态执行过程。
线程就是把进程分成更小的单元进行。
2、Java实现多线程有两种方法。一是继承Thread类,另一种是实现Runnable接口。
Thread类是在java.lang包中定义的,一个类只要继承了Thread类,此类就称为多线程实现类。在Thread子类中,
必须明确地覆写Thread类中的run()方法,此方法为线程的主体。
调...
分类:
编程语言 时间:
2014-07-22 23:01:34
阅读次数:
315
1.如何得到视图指针[问题提出]现在你有一个多线程的Demo,你想在多线程里处理视图指针里的函数,我们给这个函数起个名字:Put();该如何实现呢?//有两种方法可以实现你的要求://1)第一种方法://要是多线程不是在App.cpp里出现,那么要在多线程的.cpp中加上extern
CYourAp...
分类:
其他好文 时间:
2014-05-02 01:09:47
阅读次数:
282
UniversalImageLoader是用于加载图片的一个开源项目,UniversalImageLoader是实现异步加载大量图片的源码和例子,包括缓存、硬盘缓存、容错机制等技术。在其项目介绍中是这么写的,支持多线程图片加载;提供丰富的细节配置,比如线程池大小,HTPP请求项,内存和磁盘缓存,图片...
分类:
其他好文 时间:
2014-05-02 00:24:43
阅读次数:
332
Java
synchronized详解第一篇:使用synchronized在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语--synchronized,这也大大简化了Java中多线程同步的使用。我们首先编写一个非常简单的多线程的程序,...
分类:
编程语言 时间:
2014-05-01 22:27:03
阅读次数:
735
#include #include
//using namespace std;
DWORD WINAPI Fun1Proc(
LPVOID lpParameter // thread data
);
DWORD WINAPI Fun2Proc(
LPVOID lpParameter // thread data
);
int index=0;
int tickets=100;...
分类:
编程语言 时间:
2014-05-01 18:25:42
阅读次数:
323
String 的大小是固定的,在进行+运算时会生成新的对象。
StringBulider和StringBuffer都是动态的,但是StringBulider不是线程安全的,而StringBuffer是线程安全的。
建议:
字符串不经常修改可以使用String
字符串经常修改且单线程使用,可以用StringBulider
字符串经常修改且多线程使用,推荐StringBuffer...
分类:
其他好文 时间:
2014-04-30 22:31:39
阅读次数:
215