7. java基础学习总结2
2014-09-25 01:05
274 查看
接昨天继续总结:
9. 实现Runnable接口的类对象只是指出了线程需要完成的任务,其本身并不是线程对象,该对象可以被同时传递给多个线程对象,然后利用start启动线程。线程在其生命周期中只能被启动一次。
10. 线程让步:使当前线程让出CPU,使其他线程得以执行。线程让步有两种方式:1)只是让出当前的CPU资源,具体将CPU让给谁不确定,利用的方法是yield方法,yield方法使当前运行的线程让出CPU,回到准备状态,但是该操作没有保障,线程回到准备状态立刻被调度进入运行状态;2)线程将给指定的线程让步,指定的线程没完,其绝不恢复执行,利用的方法是join方法,其结果是调用此方法的线程一直等到此方法所在的线程执行完毕才恢复执行(谁调用谁执行)。
11. 同步方法是指用synchronized关键字修饰的方法,其与普通方法的不同是进入同步方法执行的线程将获得同步方法所属对象的锁,一旦对象被锁,其他线程就不能执行被锁对象的任何同步方法。synchronized只能用来标识方法,不能标识成员变量。若一个对象有多个同步方法,当某个线程在访问其中之一时,其他线程不能访问该对象中的任何同步方法,但可以访问非同步方法。
12. 在同步方法中可以使用特定的方法对线程进行调度。wait方法将使得某一线程进入该资源(同步方法所在对象)的等待池,使其进入等待状态,直至别的线程调用该资源的notify或者notifyAll方法将其唤醒为止。notify方法将唤醒该资源等待池中的某一个线程,具体哪个没有保障。只有wait方法释放锁,notifyAll不释放锁,只是起到通知作用。
13. 虽然StringBuffer类也有equals方法,但是其功能相当于将两个引用进行“==”比较,并没有String类equals方法比较内容是否相同。若需要比较两个StringBuffer对象内容是否相同,要首先调用toString方法,再进行比较。StringBuffer类支持同步,所以效率会比StringBuilder稍差。
9. 实现Runnable接口的类对象只是指出了线程需要完成的任务,其本身并不是线程对象,该对象可以被同时传递给多个线程对象,然后利用start启动线程。线程在其生命周期中只能被启动一次。
10. 线程让步:使当前线程让出CPU,使其他线程得以执行。线程让步有两种方式:1)只是让出当前的CPU资源,具体将CPU让给谁不确定,利用的方法是yield方法,yield方法使当前运行的线程让出CPU,回到准备状态,但是该操作没有保障,线程回到准备状态立刻被调度进入运行状态;2)线程将给指定的线程让步,指定的线程没完,其绝不恢复执行,利用的方法是join方法,其结果是调用此方法的线程一直等到此方法所在的线程执行完毕才恢复执行(谁调用谁执行)。
11. 同步方法是指用synchronized关键字修饰的方法,其与普通方法的不同是进入同步方法执行的线程将获得同步方法所属对象的锁,一旦对象被锁,其他线程就不能执行被锁对象的任何同步方法。synchronized只能用来标识方法,不能标识成员变量。若一个对象有多个同步方法,当某个线程在访问其中之一时,其他线程不能访问该对象中的任何同步方法,但可以访问非同步方法。
12. 在同步方法中可以使用特定的方法对线程进行调度。wait方法将使得某一线程进入该资源(同步方法所在对象)的等待池,使其进入等待状态,直至别的线程调用该资源的notify或者notifyAll方法将其唤醒为止。notify方法将唤醒该资源等待池中的某一个线程,具体哪个没有保障。只有wait方法释放锁,notifyAll不释放锁,只是起到通知作用。
13. 虽然StringBuffer类也有equals方法,但是其功能相当于将两个引用进行“==”比较,并没有String类equals方法比较内容是否相同。若需要比较两个StringBuffer对象内容是否相同,要首先调用toString方法,再进行比较。StringBuffer类支持同步,所以效率会比StringBuilder稍差。
相关文章推荐
- JAVA基础学习总结及注意事项
- 黑马程序员——java语言基础——总结一下学习过的类
- JAVA基础语法学习总结
- java基础学习总结
- java线程之基础学习总结(三)
- Java基础学习笔记(十)线程的创建总结
- Java基础学习总结----进制之间的运算。
- JAVA基础学习--IO流总结<二>
- java基础知识学习总结
- JAVA学习小总结(稍有基础的人就不要看了)
- java阶段性学习基础总结
- 黑马程序员_java基础知识学习总结二
- 工作学习 问题总结 java 基础 关于arraylist.addall
- 基础入门:关于JavaIO流学习总结
- Java基础学习总结
- 黑马程序员_java基础知识学习总结四
- JAVA基础学习(12)总结
- java基础----面向对象5(关键字的总结学习)
- JAVA基础学习总结---原码、补码、反码以及基本数据类型
- java基础知识学习与总结(一)