• 四、Android学习第四天——JAVA基础回顾(转)


    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html)

    四、Android学习第四天——JAVA基础回顾

    这才学习Android的第四天,在程序中已经遇到了JAVA中以前不常用的一些知识点,赶紧回顾复习一下,打下基础

    这里就做个简单的小结:

    一、匿名内部类

    • 匿名内部类说白了就是个没有被命名的JAVA类 

    在以下条件下使用匿名内部类比较适合:

    ①只用到该类的一个实例时

    ②类在定义后被马上用到

    ③类非常小(SUN推荐是在4行代码以下)

    ④给类命名并不会导致你的代码更容易被理解

    在使用匿名内部类时,需要注意:

    ①匿名内部类不能有构造方法

    ②匿名内部类不能定义任何静态成员、方法和类

    ③匿名内部类不能是public、protected、private、static

    ④只能创建匿名内部类的一个实例

    ⑤一个匿名内部类一定是在new之后,用其隐含实现一个接口或实现一个类

    ⑥匿名内部类为局部内部类,所以局部内部类的限制对其都生效

    具体的例子大家可以从网上看下,我这里只是大概的总结一下需要注意的东西。

    二、线程

    • 线程说白了就是一个程序中不同的执行路径。 

    线程跟进程的比较:

    ①每个进程都有独立的代码跟数据空间(进程的上下文),进程间得切换会有较大的开销

    ②线程可以看做是轻量级的进程,同一个线程共享代码跟数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换的开销小

    ③多进程:在操作系统中能同时运行多个任务(程序)

    ④多线程:在同一应用程序中有多个顺序流同时执行

    new一个新线程类出来一般会使用下面两种方法的其中一个:

    一:继承Thread类来创建一个新的线程,并重写run方法

    二:实现Runnable方法

    这里需要注意的是:

    线程启动:Thread.start() 

    方法调用:run()

    这两种方式的区别:其实真正要启动一个新的线程,需要执行start()方法;run()方法并没有启动一个新的线程,只是在当前线程下,暂停去执行run方法中的方法体,然后再继续执行接下来的程序。

    这两种方式的区别在今后也会详加介绍

  • 相关阅读:
    ICPC-Beijing 2006 狼抓兔子
    【模板】多项式求逆
    AHOI2014/JSOI2014 奇怪的计算器
    Hnoi2013 切糕
    Ahoi2014&Jsoi2014 支线剧情
    bzoj3774 最优选择
    WC2019游记
    HNOI2007 分裂游戏
    bzoj1457 棋盘游戏
    poj2484 A Funny Game
  • 原文地址:https://www.cnblogs.com/jenson138/p/4017615.html
Copyright © 2020-2023  润新知