1.CopyOnWriteArrayList和CopyOnWriteArraySet线程安全的集合,当生成迭代器的时候改变数组内容,不抛异常.迭代器引用的依然是旧数组
2.FutureTask包装 Future 和 Callable
MyCount count = new MyCount();
FutureTask<Integer> task = new FutureTask(count);
new Thread(task).start();
task.get();
public FutureTask(Runnable runnable,V result)
包装runnable成功后返回 result (指定结果可以用null)
3.线程池 ExecutorService
void shutdown()
关闭服务,会先完成那些已经提交的了的任务,但不再接受新的任务.
shutdownNow()
联消所有还有开始的任务并试图中断正在运行的线程.
4.控制线程组
T invokeAny(Collection<Callable<T>> tasks)
T invokeAny(Collection<Callable<T>> tasks,long timeout,TimeUnit unit)
执行给定的任务并返回其中之一的结果.第二个方法在发生超时时抛出一个TimeoutException异常.
List<Future<T>> invokeAll(Collection<Callable<T>> tasks)
List<Future<T>> invokeAll(Collection<Callable<T>> tasks,long timeout,TimeUnit unit)
执行给定的任务并返回它们的所有结果
ExecutorComplectionService 收集结果
ExecutorComplectionService service = new ExecutorCompletionService(executor);
for(Callable<Integer> task:tasks)
service.submit(task);
for(int i=0;i<task.size;i++)
count +=service.take().get
5.ListIterator 继承 Iterator 添加了add方法总是改变列表
6.不要使用LinkedList 的get 方法,因为非常低效.
7.TreeSet 排序Hash集合(红黑树数据结构)
SortedSet ss = new TreeSet();
ss.first();
ss.last();
SortedSet ssc = new TreeSet(new Comparator(){
public int compare(Object obj1,Object obj2){
return 1;
}
});
8.socket 半关闭 soket.shoutdownOutput() 关闭输出流,但输入流还要开
9.查看注册的RMI服务
Context namingContext = new InitialContext();
NamingEnumeration<NameClassPair> e = nameingContext.list("rmi:");
while(e.hasMore){
System.out.println(e.next().getName());
}
10.System.setSecurityManager(new RMISecurityManager());为RMI安装安全管理器
11.每个java程序至少有三个类加载品器
1.引导加载器
2.扩展加载器
3.系统加载器
分享到:
相关推荐
复习笔记中可能包含了这些知识点的详细讲解和实例代码,通过阅读和实践这些内容,开发者能够加深对J2SE的理解,提高编程能力。在学习过程中,建议结合具体场景进行练习,以加深对每个知识点的实际运用。同时,不断...
**Java技术体系与J2SE** Java技术体系主要包括三个主要...这份笔记不仅适合Java初学者,也对有经验的开发者提供了一种复习和深化理解的资源。通过深入学习和实践,开发者可以在Java平台上构建复杂且健壮的应用系统。
对于初学者,建议先从视频讲解开始,结合PPT进行笔记整理,然后逐步分析和运行源代码,遇到问题时回溯视频和PPT寻找答案。对于有经验的开发者,这些资源也可以作为复习和提升专业技能的参考资料。 总的来说,"J2SE....
根据“java达内复习笔记.pdf”的标题、描述、标签及部分内容,我们可以提炼出以下关键知识点: ### Java基础知识 #### 1. Java的历史和发展 - **Java之父**: James Gosling (Golsling可能是笔误) - **Java的诞生**...
### Java基础复习笔记03:我们不会注意的陷阱 在Java编程中,存在许多细节问题,如果不加以注意,则可能在实际开发过程中导致各种难以预料的问题。本文将通过一系列实例来探讨那些经常被忽略的陷阱,并对其进行深入...
"学习精华"这个压缩包很可能是包含了一系列关于这些主题的笔记、代码示例或教程,对于系统性地提升 Java 技能是非常有帮助的。如果你正在学习或复习这些内容,建议仔细阅读并实践其中的示例,以加深理解和应用能力。
"复习笔记"可能是作者在学习过程中的总结,包括对重要概念的理解、关键知识点的提炼以及实际编程中的经验分享。这样的笔记对于巩固所学知识、查漏补缺非常有帮助,可以作为学习过程中的重要参考资料。 总的来说,要...
这份学习计划旨在帮助初学者从零开始,逐步掌握Java编程,并最终达到J2SE(Java Standard Edition)精通,进而进阶到J2EE(Java Enterprise Edition)的高手水平。以下是基于给定内容的详细学习路径: 1. **基础...
实训者在初期可能经历了一个混乱的学习阶段,但随着时间的推移,通过不断的实践和反思,逐步形成有效的学习方法,比如有目的性的复习,而不是盲目地翻看笔记。 总的来说,JavaWeb实训不仅是技术的磨练,更是学习...
课程要求学生认真记笔记,保持课堂纪律,独立完成并提交作业,重视上机实践,同时,考试成绩占50%,平时成绩占20%,项目成绩占30%,形成全面的评价体系。 学习Java Web开发,首先要【搭建开发环境】。这包括安装和...