写代码的四点:
1.明确需求。要做什么?
2.分析思路。要怎么做?(1,2,3……)
3.确定步骤。每一个思路要用到哪些语句、方法和对象。
4.代码实现。用具体的语言代码将思路实现出来。
学习新技术的四点:
1.该技术是什么?
2.该技术有什么特点?(使用需注意的方面)
3.该技术怎么使用?(写Demo)
4.该技术什么时候用?(在Project中的使用场景 )
----------------------早计划,早准备,早完成。------------------------
创建线程的两种方式:
继承Thread类和实现Runnable接口。
创建线程通常通过实现Runnable接口来实现,可以避免单继承的局限性。
1.继承Thread类;
/**
* 创建线程:继承Thread类
* 1.定义CreateThreadExtendThread类继承Thread类,并重写run()方法;
* 2.创建CreateThreadExtendThread类的实例,即创建了新的线程对象;
* 3.调用新的线程对象的start()方法来启动该线程。(new CreateThreadExtendThread().start();)
* 注:Thread.currentThread().getName()方法可以获取当前线程的名称。
*/
public class CreateThreadExtendThread extends Thread{
//重写run方法,run方法的方法体就是执行体
@Override
public void run() {
//super.run();
for (int i = 0; i < 10; i++) {
LogUtil.e("创建线程:继承Thread类", getName() + "----" + i);
}
}
}
2.实现Runnable接口;
/**
* 创建线程:实现Runnable接口
* 1.定义CreateThreadImplementsRunnable类实现Runnable接口,并重写run()方法;
* 2.创建CreateThreadImplementsRunnable类的实例,并依此实例作为Thread的target来创建Thread对象,
* 该Thread对象是新的线程对象;
* 3.调用新的线程对象的start()方法来启动该线程。
* (CreateThreadImplementsRunnable createThreadImplementsRunnable = new CreateThreadImplementsRunnable();
new Thread(createThreadImplementsRunnable).start();)
* 注:Thread.currentThread().getName()方法可以获取当前线程的名称。
*/
public class CreateThreadImplementsRunnable implements Runnable {
//重写run方法,run方法的方法体就是执行体
@Override
public void run() {
for (int i = 0; i < 10; i++) {
LogUtil.e("创建线程:实现Runnable接口", Thread.currentThread().getName() + "----" + i);
}
}
}
3.调用;
new CreateThreadExtendThread().start();
CreateThreadImplementsRunnable createThreadImplementsRunnable = new CreateThreadImplementsRunnable();
new Thread(createThreadImplementsRunnable).start();
---------------------------------------------------------------------------------------------------------------------------
早计划,早准备,早完成。 欢迎关注!交流!Star!
GitHub:https://github.com/wangyang0313
微信公众号:一个灵活的胖子MrWang