2014-11-04 Java
来源:互联网 发布:淘宝店铺发布二手产品 编辑:程序博客网 时间:2024/06/04 22:03
1. 子类和父类的关系是 is-a,父类和子类的关系不是 has-a
2. List<?extendsString> list ?表示元素是String 类型或者他的子类(Part B. Question11)
3. Arrays.binarySearch(Object[]a, Object key) (question 16)
使用该搜索方法前要先对a[]进行排序。 如果搜素的key包含在数组中,则返回其在数组中的索引值,若数组中不含key,则返回其应当被插入位置的索引值。会抛出ClassCastException
4. Treeset (question17)
Treeset在存储对象的时候会自动为对象排序。 (Integer 和 String 有默认顺序, 若是自定义的类想要通过Treeset排序,则该类需要先实现Comparable接口,重写compareto方法)
5. Thread (question19)
start() : Causes this thread to begin execution; the Java Virtual Machine calls therun
method of this thread.
join() : Waits for this thread to die.
6. (转载)JAVA的synchronized关键字能够作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。假如再细的分类,synchronized可作用于instance变量、object reference(对象引用)、static函数和class literals(类名称字面常量)身上。在进一步阐述之前,我们需要明确几点:
A.无论synchronized关键字加在方法上还是对象上,他取得的锁都是对象,而不是把一段代码或函数当作锁――而且同步方法很可能还会被其他线程的对象访问。
B.每个对象只有一个锁(lock)和之相关联。
C.实现同步是要很大的系统开销作为代价的,甚至可能造成死锁,所以尽量避免无谓的同步控制。
synchronized关键字的几种使用情况。
1)放在方法的返回类型和access privilege之间。
Public synchronized void method(){}这是同步方法,这时synchronized锁定的是调用这个同步方法对象。上边的示例代码等同于如下代码:
- public void method()
- {
- synchronized (this) // (1)
- {
- //…..
- }
- }
2)同步块
- public void method(SomeObject so) {
- synchronized(so)
- {
- //…..
- }
- }
这时,锁就是so这个对象
3)将synchronized作用于static 函数
- Class Foo
- {
- public synchronized static void method1() // 同步的static 函数
- {
- //….
- }
- public void method2()
- {
- synchronized(Foo.class) // class literal(类名称字面常量)
- }
- }
代码中的method2()方法是把class literal作为锁的情况,他和同步的static函数产生的效果是相同的,取得的锁很特别,是当前调用这个方法的对象所属的类(Class,而不再是由这个Class产生的某个具体对象了)。
- 2014-11-04 Java
- 2014-11-02 Java
- 2014-11-03 Java
- Java 04
- java--04
- 04-java
- java-04
- Java 11
- JAVA | 11
- 2014-12-04:java发送邮件
- 2014-11-21 java web 学习笔记
- Java笔记04-Java语法基础03
- Java咖啡馆(11):Java插件技术
- java 高新技术【11】 java 代理类
- java 高新技术【11】 java 代理类
- 11 java 王少飞-java网络编程小节
- 11 java 王少飞-Java SE 加强小节
- java基础知识11-java运行时
- 缓存、缓存算法和缓存框架简介
- 什么是MEAN全堆栈javascript开发框架
- 扩展欧几里得算法解同余方程(NOIP2012)
- nyoj 2 括号匹配(栈的基本运用)
- C++中虚析构函数的作用
- 2014-11-04 Java
- 对数的发展史
- java中CountDownLatch线程同步的入门使用
- 关于 Fragment 之3___fragment在xml布局中写法
- Intel Galileo笔记(七)小小的玩耍之超声波测距
- LRU Cache
- 一个jquery对table的操作
- eclipse设置自定义快捷键和导入快捷键文件
- 黑马程序员——其他3:jar包