- 博客(3)
- 收藏
- 关注
原创 实现可旋转伸缩连线效果
js实现可旋转伸缩连线效果代码。//添加滑动事件 ulBox.addEventListener("touchstart", function(e) { startY = e.targetTouches[0].clientY; startX = e.targetTouches[0].clientX; }); ulBox.addEventListener("touchmove", function(e) { moveY = e.targetTouches
2020-11-30 19:27:51
1932
原创 有哪两种实现线程的方式,区别在哪?
直接继承Thread类和实现Runnable接口都能实现多线程实现Runnable接口相对于继承Thread类来说,有如下显著的好处:1.适合多个相同程序代码的线程去处理同一个资源的情况,把线程同程序代码、数据有效的分离,很好的体现了面向对象的设计思想。2.可以避免由于Java的单继承带来的局限性。在开发中经常碰到这样一种情况,就是使用一个已经继承了某一个类的子类创建线程,由于一个类不能同时有两个父类,所以不能用继承Thread类的方式,那么就只能采用实现Runnable接口的方式。现在大部分的多线程
2020-05-26 16:20:44
485
原创 什么是线程的生命周期,生命周期的各个状态?
生命周期是线程被创建并启动后经历的各个状态;线程整个生命周期可以分为五个阶段,分别是新建状态(New)、就绪状态(Runnable)、运行状态(Running)、阻塞状态(Blocked)和死亡状态(Terminated)1.新建状态(New)当程序使用new关键字创建了一个线程之后,该线程就处于新建状态,此时程序不能运行,且仅由JVM为其分配内存,并初始化其成员变量的值2.就绪状态(Runnable)当线程对象调用了start()方法之后,该线程处于就绪状态。此时它只是具备了运行的条件,Java虚拟机
2020-05-26 16:19:06
2066
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人