- 浏览: 548982 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
wa114d:
楼主工作几年了,好厉害
一个面试官对面试问题的分析 -
wobuxiaole:
Good,非常好
30岁前男人需要完成的事 -
小逗逗:
Good,非常好
30岁前男人需要完成的事 -
invincibleLiu:
好帖,要顶!(别投我隐藏啊,这是对BBS最原始一种支持)
Java:synchronized修饰符在静态方法与非静态方法上的区别 -
fayedShih:
第三题,不知道对不对
import java.util.con ...
企业牛逼面试题目 高手进来讨论答题
props.load(new FileInputStream("db.properties")); 是读取当前目录的db.properties文件 getClass.getResourceAsStream("db.properties"); 是读取当前类所在位置一起的db.properties文件 getClass.getResourceAsStream("/db.properties"); 是读取ClassPath的根的db.properties文件,注意ClassPath如果是多个路径或者jar文件的,只要在任意一个路径目录下或者jar文件里的根下都可以,如果存在于多个路径下的话,按照ClassPath中的先后顺序,使用先找到的,其余忽略. /**method one */ //URL DATABASE_CONFIG = ConnectionManager.class.getResource("/privilegeConfig.properties"); //is = new FileInputStream(DATABASE_CONFIG.getFile()); /**method two */ // is = ConnectionManager.class.getResourceAsStream("/privilegeConfig.properties"); /**method three */ is = new BufferedInputStream(new FileInputStream(ResourceUtils.getFile("classpath:" + filePath))); props.load(is);
集合转换数组和集合内部排序:
Map<String, Integer> errRecords = new HashMap<String, Integer>(); errRecords.put("test", 1); errRecords.put("test1",4 ); errRecords.put("test2",55 ); errRecords.put("test3", 33); errRecords.put("test4",2 ); errRecords.put("test5",6); errRecords.put("test6", 787); Integer[] errs = errRecords.values().toArray(new Integer[0]); Arrays.sort(errs, new Comparator<Integer>() { public int compare(Integer o1, Integer o2) { return o2.intValue() - o1.intValue(); } }); for (int i = 0; i < errs.length; i++) { System.out.println(errs[i].toString()); }
幽灵引用 -- 好强大的文章
http://www.iteye.com/topic/401478
ThreadLocal -- 非常全面解释了这个怪东东
http://www.iteye.com/topic/103804
Concurrent -- 并发啊
http://www.iteye.com/topic/363625
泛型 -- 泛型一箩筐
http://www.java3z.com/cwbwebhome/article/article5/tiger2.jsp
Comparator和Comparable -- 这个怪叔叔不算高级了,但是可以深入的了解一下它类似的设计模式 -- 策略模式。。如有兴趣还要把它和枚举放到一起
http://www.blogjava.net/fastunit/archive/2008/04/08/191533.html
public abstract class Enum<E extends Enum<E>> implements Comparable<E>, Serializable public abstract class Enum<E extends Enum<E>> implements Comparable<E>, Serializable
ListIterator -- 怪东东,虽然不难,但我竟然没有听过,更别提用过了。看看JDK源码中关于list的reverse实现
public static void reverse(List<?> list) { int size = list.size(); if (size < 18 || list instanceof RandomAccess) { for (int i=0, mid=size>>1, j=size-1; i<mid; i++, j--) swap(list, i, j); } else { ListIterator fwd = list.listIterator(); ListIterator rev = list.listIterator(size); for (int i=0, mid=list.size()>>1; i<mid; i++) { Object tmp = fwd.next(); fwd.set(rev.previous()); rev.set(tmp); } } } public static void swap(List<?> list, int i, int j) { final List l = list; l.set(i, l.set(j, l.get(i))); } public static void reverse(List<?> list) { int size = list.size(); if (size < 18 || list instanceof RandomAccess) { for (int i=0, mid=size>>1, j=size-1; i<mid; i++, j--) swap(list, i, j); } else { ListIterator fwd = list.listIterator(); ListIterator rev = list.listIterator(size); for (int i=0, mid=list.size()>>1; i<mid; i++) { Object tmp = fwd.next(); fwd.set(rev.previous()); rev.set(tmp); } } } public static void swap(List<?> list, int i, int j) { final List l = list; l.set(i, l.set(j, l.get(i))); }
写道
List和Set都有iterator()来取得其迭代器。对List来说,你也可以通过listIterator()取得其迭代器,两种迭代器在有些时候是不能通用的,Iterator和ListIterator主要区别在以下方面:
1. ListIterator有add()方法,可以向List中添加对象,而Iterator不能
2. ListIterator和Iterator都有hasNext()和next()方法,可以实现顺序向后遍历,但是ListIterator有hasPrevious()和previous()方法,可以实现逆向(顺序向前)遍历。Iterator就不可以。
3. ListIterator可以定位当前的索引位置,nextIndex()和previousIndex()可以实现。Iterator没有此功能。
4. 都可实现删除对象,但是ListIterator可以实现对象的修改,set()方法可以实现。Iierator仅能遍历,不能修改。
因为ListIterator的这些功能,可以实现对LinkedList等List数据结构的操作。其实,数组对象也可以用迭代器来实现。
你真的理解finally了吗,看看这篇文章后,你或许不会这么自信了
http://zangxt.iteye.com/blog/421508
Java类加载机制 -- 很好的博文
http://lavasoft.blog.51cto.com/62575/184547
发表评论
-
ConcurrentHashMap在jdk1.7和jdk1.8中的不同
2021-12-02 17:30 0https://blog.csdn.net/qq_418849 ... -
CallableAndFuture
2012-07-24 11:31 1182import java.util.concurrent.Cal ... -
CountDownLatch
2012-07-24 11:00 1179concurrent包里面的CountDownLatch其实可 ... -
认识理解Java中native方法
2011-11-02 16:35 2366Java不是完美的,Java的不足除了体现在运行速度 ... -
java 数组复制:System.arrayCopy 深入解析
2011-11-02 10:02 4182转载:http://happyjin2010.it ... -
equals hashcode 深度分析
2011-07-14 13:17 11551.hashcode是用来查找的,如果你学过数据结构就应该知道 ... -
java proxy
2011-07-12 16:31 945代理?就是别人帮你管理叫代理. 举个例子 你是家里的主人, ... -
关于 JVM 命令行标志您不知道的 5 件事(来自IBM)
2010-11-29 17:10 972JVM 是多数开发人员视为理所当然的 Java 功能和性能背后 ... -
关于 Java Collections API 您不知道的 5 件事,第 1 部分(转自IBM)
2010-11-29 16:58 991对于很多 Java 开发人员 ... -
java线程安全总结(转载jameswxx)
2010-11-29 12:50 1377最近想将java基础的一些 ... -
说说new Integer和Integer.valueOf(转载jameswxx)
2010-11-29 12:23 1648看看这两个语句 Integer a=new Integer ... -
优化JVM参数提高eclipse运行速度
2010-11-26 16:13 891性能优化从身边做起。 首先建立评估体系,将workspac ... -
主题:一次Java垃圾收集调优实战
2010-11-26 15:29 11341 资料 •JDK5.0垃圾收集优化之--Don't Paus ... -
通过GC输出分析内存泄露问题
2010-11-26 15:13 1033SIP5.0以后服务的请求量爆发性增长,因此也暴露了原来没有暴 ... -
15种提高系统伸缩性和性能的最佳实践
2010-11-25 16:00 9991, 提高系统性能, 需要尽早做性能剖析, 而且要经常做.当项 ... -
JVM调优总结(一)-- 一些概念
2010-11-25 15:00 897数据类型 Java虚拟机中,数据类型可以分为两类:基本 ... -
DCL,双重检查(来自annegu)
2010-09-05 16:25 935对于多线程编程来说, ... -
JVM原理学习笔记一
2010-06-11 16:22 910最近在阅读 《Inside the J ... -
ImportDataFromMySQLToOracle
2009-12-10 10:42 1349import java.sql.Connection; im ... -
Merge two Hashtable<String, Integer>
2009-12-03 14:50 1378private static Hashtable< ...
相关推荐
Java开发备忘录是程序员在进行Java编程时的重要参考资料,它涵盖了从基础知识到高级特性的全方位内容。以下是一些关键的Java开发知识点,基于提供的信息,我们无法获取具体子文件的详细内容,所以将根据Java的常规...
为了持久化数据,Java的IO流或者更高级的序列化技术,如JSON或XML,可以用来将备忘录数据写入文件。 当用户再次点击同一日期时,程序需要能读取并显示之前保存的备忘录。这需要熟练掌握文件读取操作,如使用...
通过以上知识点的学习,高级Java工程师不仅能够具备扎实的基础技能,还能够在面对复杂的软件开发任务时,更加从容不迫,有效地解决问题。此外,对于希望在Java领域进一步提升自己的开发者来说,这些知识也是不可或缺...
### Java高级部分教材知识点概述 ...《Java高级部分教材》深入介绍了设计模式的基础概念及其应用场景,为读者提供了丰富的实践指导。此外,该教材还提供了多个实际案例,帮助读者更好地理解和应用这些模式。
Java中可以使用文件系统、SQLite数据库或是更高级的持久化框架如JPA(Java Persistence API)。 5. **线程与并发**:倒计时功能可能需要后台线程来运行,以避免阻塞主线程。这需要用到`Thread`类或`ExecutorService...
在Java高级面试中,面试官通常会关注候选人在核心Java、多线程、集合框架、JVM内存管理、设计模式、数据库操作、网络编程、异常处理、IO流、Spring框架及其实现原理等方面的知识掌握程度。以下是根据这些关键点展开...
开发过程中,不断学习和实践,理解Android系统的工作原理,掌握更多高级特性,是成为一名优秀Android开发者的重要途径。希望这个项目能对大家的学习有所帮助,也欢迎参考和改进,共同推进Android应用的创新和发展。
Java 和 Android 面试备忘单包含了这两个领域中最重要的知识点和常见面试问题。下面将对这些关键概念进行深入解析。 一、Java 基础 1. **数据类型**:Java 分为基本数据类型(如 int, char, boolean)和引用数据...
在Android平台上,开发一款备忘录应用是...总结,"android备忘录源码"提供了一个很好的学习平台,涵盖了Android应用开发的基础和进阶知识。通过深入研究和实践,你将能够提升Android开发技能,理解和构建更复杂的项目。
在Android平台上,开发一个备忘录系统是一项常见的实践任务,对于初学者来说,这是一个极好的学习项目,因为它涵盖了Android开发的基础知识以及一些高级特性。在这个实例中,我们将深入探讨如何构建这样一个系统,从...
- 系统由基础信息管理、人事管理、备忘记录管理、数据库管理、管理工具和系统管理六大模块组成。 - 基础信息管理涉及部门类别、职工类别、文化程度、政治面貌等信息的设置和管理。 - 人事管理涵盖人事档案、资料...
这可能是对Core Java的笔记整理,包含了对Java核心概念的详细解析,例如类库的使用、高级特性(如泛型、注解、枚举等)以及实战技巧。这类笔记对于学习和复习Java知识非常有帮助。 6. **java基础类型面试题大全....
Java是一种广泛使用的高级编程语言,由Sun Microsystems于1995年发布。它被设计为简单、面向对象、分布式、解释型、健壮、安全、与体系结构无关、可移植、高性能、多线程和支持动态的网络计算环境。Java的目标之一是...
在Java中,`java.util.Calendar`是一个抽象类,提供了高级的日期和时间操作功能。在本示例中,我们使用`GregorianCalendar`,它是`Calendar`的子类,基于公历系统。`GregorianCalendar`对象初始化为当前的日期和时间...
- 巩固课堂所学的Java基础知识,深入理解面向对象的概念; - 锻炼学生运用面向对象思想和设计模式解决实际问题的能力; - 掌握JDK和JCReator等开发工具的使用; - 提升学生对Java类库的熟悉度; - 通过实践项目...
Java设计模式是软件工程中的一种重要思想,它总结了在解决特定问题时,程序员们反复使用的最佳实践。...设计模式的熟练掌握也是成为高级Java开发者的必备条件之一,对于个人职业发展有着显著的推动作用。
4. **多线程**:Java并发编程是高级面试中的常见问题,涉及线程的创建、同步机制(synchronized, volatile, Lock等)、线程池的使用及原理(ExecutorService, ThreadPoolExecutor, ScheduledExecutorService)。...
在Android平台上,开发一款记事本或备忘录应用是一个常见的练习项目,它能帮助用户记录日常生活中的琐事。这个项目名为"SimpleNotePad",显然是一款基础的文本编辑应用,适合初学者入门学习。接下来,我们将深入探讨...
这个资源涵盖了Java的基础知识、进阶概念以及实际应用,对于提升Java技能水平和应对各种技术面试具有很高的参考价值。 一、Java基础知识 1. 类与对象:理解面向对象编程的基本概念,如类的定义、对象的创建与销毁。...