zoukankan      html  css  js  c++  java
  • 20165336 2017-2018-2 《Java程序设计》第8周学习总结

    20165336 2017-2018-2 《Java程序设计》第8周学习总结

    教材学习内容总结

    第十二章

    1、程序:一段静态的代码.进程:程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。

    2、线程的状态与生命周期:新建,运行,中断,死亡:

    • (1)新建:当一个Thread类或其子类的对象被声明并创建时,新生的线程对象处于新建状态。此时它已经有了相应的内存空间和其他资源。
    • (2)运行:1、如果线程是Thread的子类创建的,该类中的run()方法就立刻执行,且程序必须在子类中重写父类的run()方法。2、在线程没有结束run()方法之前,不要让线程再调用start()方法,否则将发生IllegalThreadStateException异常
    • (3)中断:有4种原因的中断:
      JVM将CPU资源从当前线程切换给其他线程,使本线程让出CPU的使用权处于中断状态。
      线程使用CPU资源期间,执行了sleep(int millsecond)方法,使当前线程进入休眠状。
      线程使用CPU资源期间,执行了wait()方法。
      线程使用CPU资源期间,执行某个操作进入阻塞状态。
    • (4)死亡:所谓死亡状态就是线程释放了实体,即释放分配给线程对象的内存,处于死亡状态的线程不具有继续运行的能力

    3、 线程的常用方法

    • start()方法:线程调用该方法启动。
    • run()方法:与Runnable接口中run()方法的功能和作用相同,只有当该方法运行结束后,线程才能再次调用start()方法。
    • sleep(int millsecond)方法:调用该方法中断线程,过了参数指定的秒数过后才“醒来”。该方法必须在try-catch语句中调用,因为线程如果在休眠中被打断,会抛出InterruptedException异常。
    • isAlive()方法:判断线程是否正在运行,若是,返回true,若不是,返回false。注意,一个已经运行的线程在没有进入死亡状态时,不要再给线程分配实体。
    • currentThread()方法是Thread类中的类方法,返回当前使用CPU的线程。
    • interrupt()方法用来“唤醒”调用sleep方法而处于睡眠状态的线程。

    代码调试中的问题和解决过程

    • 问题1:在编写四则运算计算器时在windows命令窗口输入(乘号*),报出异常,但是输入带引号的乘号“*”运行正常。

    • 解决方法:根据百度查找解答得知在windows控制台下运行java程序,输入的命令行中有*(作为乘号使用)必须写成"*"这种形式。

    • 问题2:数组调用length方法不用带()否则会出现错误。

    代码托管

    (statistics.sh脚本的运行结果截图)

  • 相关阅读:
    ArcGIS影像配准与空间配准
    去除右键菜单opendlg
    Windows环境下Android Studio v1.0安装教程
    OpenGL入门
    Fetching android sdk component information
    事件的委托处理(Event Delegation)
    Javascript模块化编程:模块的写法
    10种排序算法总结
    GitHub-修改以下host-ip可加快访问速度
    this
  • 原文地址:https://www.cnblogs.com/20165336kzq/p/8908445.html
Copyright © 2011-2022 走看看