当前位置:首页 > 小点总结
小点总结
1.三目运算符中:第二个表达式和第三个表达式中如果都为基本数据类型,整个表达式的运算结果
由容量高的决定。99.9是double类型 而9是int类型,double容量高。例如:value is “+ ((x>4) ? 99.9 :9 2.静态代码块优先执行,按顺序执行例如:
class StaticStuff
{
static int x=10;
static { x+=5;}
public static void main(String args[ ]) {
System.out.println(“x=” + x);
} static { x/=3;} } 结果:5
3.constructor(构造方法)可以省略,但若不省略时,其必须和类class同名,在一个对象被new时执行,它仍然可以重载! 4.实例方法不可以直接调用父类的私有方法! 5.abstract声明抽象方法时不可以写出大括号! 6. 17.链表具有的特点是:(3项) A、不必事先估计存储空间
C、插入删除不需要移动元素 D、所需空间与线性表长度成正比 7.String的indexOf()方法:
查询某个字符出现位置的下标,若未找到返回-1,其返回值一定
是int类型。 8.属性的可见性:
公有(public)私有(private)被保护的(protected)默认
9.插入式排序:
插入排序算法:
public static void injectionSort(int[] numbe // 第一个元素作为一部分,对后面的部分进行 for (int j = 1; j < number.length; j++) { int tmp = number[j]; int i = j - 1;
while (tmp < number[i]) { number[i + 1] = number[i]; i--; if (i == -1) break; }
number[i + 1] = tmp;
}}
10. 栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。后进先出!
11 stop方法.
这个方法将终止所有未结束的方法,包括run方法。当一个线程停止时候,他会立即释放所有他锁住对象上的锁。这会导致对象处于不一致的状态。当线程想终止另一个线程的时候,它无法知道何时调用 stop 是安全的,何时会导致对象被破坏。所以这个方法被弃用了。
你应该中断一个线程而不是停止他。被中断的线程会在安全的时候停止。
12
static:修饰的静态变量 final 修饰的是常量 abstract不能修饰变量
Volatile修饰的成员变量在每次被线程访问时,都强迫从共享内存中重读该成员变量的值。
而且,当成员变量发生变化时,强迫线程将变化值回写到共享内存。这样在任何时刻,
两个不同的线程总是看到某个成员变量的同一个值。 Transient:对不需序列化的类的域使用 transient关键字,以减少序列化的数据量。
int k=4相当于public static final int k=4; 在接口中可以不写 static final.
13.
String
类是final的,在java中 final修饰类的不能被继承
14.
Java支持单重继承,一个类只能继承自另外的一个类,但是一个类可以实现多个接口。
15. sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用 sleep不会释放对象锁。
wait 是 Object 类的方法,对此对象调用 wait 方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出 notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对 象锁进入运行状态。
16. sleep:导致此线程暂停执行指定时间
stop: 这个方法将终止所有未结束的方法,包括run方法。 synchronized():对象锁
yield:当前正在被服务的线程可能觉得cpu的服务质量不够好,于是提前退出,这就是yield。
wait:当前正在被服务的线程需要睡一会,醒来后继续被服务 17.
.方法 resume()负责恢复哪些线程的执行: D通过调用suspend()方法而停止的线程。
18. 使用start()方法可以使一个线程成为可运行的,但是它不一定立
共分享92篇相关文档