JAVA知识_12

来源:互联网 发布:怎么样数据共享 编辑:程序博客网 时间:2024/05/29 12:57

一、-进程和线程
-进程和线程的关系 一对多
-我们的android应用单进程多线程(特殊情况也允许操作另外的进程)
-进程和线程的从属关系;进程下面才能衍生线程

-线程
-多线程为什么很难控制
- 随机性。每一条线程运行多久,主要看CPU分配的时间片,时间片一旦过期,那么会无条件直接进入暂停或者阻塞状态
- 不可控性。不是完全不可控,但是应用起来控制的难度比较大。

-线程的状态(Thread周期)
- 创建
- 就绪
- 运行
- 阻塞
- 终止
- 样例:创建了一个线程 然后进入就绪状态 然后进入 运行状态 时间片过期 进入阻塞状态 就绪状态 运行状态 终止
//线程的休眠 stop

-主线程和子线程
- main方法是程序入口
- 这个main方法是个死循环 利用管道流的休眠机制运行
- main方法一直运行的这个线程 我们称之为主线程
- 其他的都是子线程了

-线程的创建
- 继承 Thread类 重写run方法
- 实现 Runnable接口 重写里面方法

二、- 游戏引擎
- 游戏引擎就是帮助我们已经做好了很多功能和特效
- 我们可以直接投放在项目中,缩短研发周期和研发难度
- 窗体
- TankWindows 继承 windows
- 在入口函数里面 创建TankWindows类对象
- 通过TankWindows类对象触发其start方法启动窗口
- 窗体方法说明
- 详细参见代码
- 坐标系
- 横向为X轴
- X向右是增加 向左是相减
- 纵向为Y轴
-y向下是增加,向上是相减
- 图像显示
- 图像显示需要频繁刷新窗体内容

  • 音频播放

    • 工具类实现,不做重点讨论
  • 键位信息

    • 键盘按键都有对应的编码
    • 当键盘按键被出发之后
    • 我们在方法里面能够采集到被按的按键相对应的编码
    • 使用这个编码可以和相对应的键位进行匹配
    • 如果匹配成功 我们就可以根据用户的键盘操作给出反应
    • 这里写图片描述
    • 这里写图片描述
原创粉丝点击