java学习总结

上传人:xzh****18 文档编号:34169286 上传时间:2018-02-21 格式:DOC 页数:8 大小:46KB
返回 下载 相关 举报
java学习总结_第1页
第1页 / 共8页
java学习总结_第2页
第2页 / 共8页
java学习总结_第3页
第3页 / 共8页
java学习总结_第4页
第4页 / 共8页
java学习总结_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《java学习总结》由会员分享,可在线阅读,更多相关《java学习总结(8页珍藏版)》请在金锄头文库上搜索。

1、Java 多线程学习总结2009-11-25 作者: 编辑:闫蕊 点击进入论坛关键词: Java 多线程一、线程的基本概念简单的说:线程就是一个程序里不同的执行路径,在同一个时间点上 cpu 只会有一个线程在执行,Java 里的多线程是通过 java.lang.Thread 类来实现的,每个线程都拥有自己独立的方法栈空间。二、java 线程的创建和启动第一种定义线程类实现 Runnable 接口:Thread myThread = new Thread(target) /target 为 Runnable 接口类型Runnable 中只有一个方法:public void run();用以定义线

2、程运行体第二种可以定义一个 Thread 的子类并重写其 run 方法:clas MyThread extends Threadpublic void run()线程类必须通过执行 Thread 的 start()方法启动一个新的线程,如果调用 run()方法是属于方法的调用,不会启动一个新的线程,推荐使用第一种方式创建线程,使用接口较为灵活。三、线程状态装换调用线程 start()方法时,线程进入就绪状态,Cpu 分配时间片,线程进入运行状态,时间片结束,run()方法未执行完,线程进入阻塞状态。四、线程控制基本方法isAlive() /判断线程是否还 “活着”,即线程是否还未终止getPr

3、iority() /获得线程的优先级数值setPriority() /设置线程的优先级指数Thread.sleep() /静态方法,将当前线程睡眠指定毫秒数join() /调用某线程的该方法,将当前线程与该线程合并,/即等待该线程结束,再回复当前线程的运行。yield() /让出 CPU,当前线程进入就绪状态等待调度interrupt() /中断线程wait() /当前线程进入对象的 wait poolnotify()/all /唤醒对象的 wait pool 中的一个/所有等待线程五、sleep 方法Thread 的静态方法public static void sleep(long mill

4、is)throws InterruptedException必须对异常进行捕捉Thread.currentThread(); /拿到当前线程AWT 组件库(达内学习日记之二十三)2004-8-30 星期一 晴1. 组件公有方法答:1) setForeground(): 设置前景颜色; setBackground(): 设置背景颜色;2) getForeground(): 取得前景颜色; setBackground(): 取得背景颜色;3) setEnabled(): 使组件有效; getEnabled(): 取得组件有效的状态;4) setVisible(): 使组件可视; getVisibl

5、e(): 取得组件可视状态;5) setFont(): 设置组件字体; getFont(): 取得组件字体;6) setSize(): 设置组件大小; getSize(): 取得组件大小;7) getPreferredSize(): 取得默认的尺寸;8) setLocation(): 设置组件位置; getLocation():获得组件位置;9) setBounds(): 移动并且重新调整尺寸; getBounds(): 返回这个组件的范围 (位置和尺寸);10)paint(): 绘制组件; repain():重绘; update(): 更新;2. 按钮(Button)答:1) 当单击时产生一

6、个动作 action;2) 构造函数:Button()Button(String label)3) 方法:setActionCommand(): 设置这个按钮触发的动作事件的命令名称 ;getActionCommand(): 返回这个按钮触发的动作事件的命令名称;setLabel(): 设定这个按钮的标签;getLabel(): 得到这个按钮的标签;addActionListener(): 加入指定的动作侦听器去接按钮动作事件;removeActionListener(): 移除指定的动作侦听器,使按钮不再接收动作事件 ;getActionListeners(): 返回所有登记的动作侦听器的数

7、组;3. 画布(Canvas)答:1) 用来显示图形;2) 绘制外形、像素以及带有许多颜色的文本 3) 构造方法:Canvase()Canvas(GraphicsConfiguration conf)4) 方法:paint()update()4. 复选框(Checkbox)答:1) 单独使用,显示一选中或不选中的复选框;2) 作为复选框组的成员,它的表现和单选按钮同;3) 构造函数:checkbox()checkbox(String label)checkbox(String label, boolean state)checkbox(String label, boolea state, C

8、heckboxGroup group)checkbox(String label, CheckboxGroup, boolean state)4) 关于 checkbox 的方法:addItemListener(): 加入指定项目监听器接收复选框项目事件;removeItemListener(): 移除指定的项目监听器,使复选框不再接收复选框事件;setState(): 将复选框设定为指定状态;getState(): 判断复选处于“开” 或“关”状态;setLabel(): 设置复选框标签; getLabel(): 得到复选框标签。5) 关于 CheckboxGroup 的方法getSelec

9、tedCheckbox(): 从复选框组中得到当前选择;setSelectedCheckbox(): 设置复选框组中指定复选框为选中。5. 下拉列表(Choice)答: 1) 一种下拉菜单形式的单选项;2) 当前选中的项目显示在屏幕上;3) 构造函数:Choice()4) 方法:add(): 为下拉列表加入选项元素;insert: 在指定位置插入选项元素;getSelectedItem(): 以字符串形式返回当前选项;getSelectedIndex(): 返回当前选项的索引;getItem(): 返回下拉列表中指定索引位置元素的字符串格式 ; addItemListener(): 加入指定项

10、目监听器,接收来自下拉列表的项目事件;removeItemListener(): 移除指定项目监听器,使它不再接收来自下拉列表的项目事件;6. 标签(Label)答:1) 用以在屏幕上显示文本;2) 没有直接的交互动作;3) 构造方法:Label()Label(String text)Label(String text, int alignment)4) 方法setText(): 设置标签的文本为指定内容;getText(): 得到标签的文本内容 ;7. 列表(List)答:1) 在屏幕上显示一组文本选项;2) 允许用户单选或多选;3) 构造方法List()List(int rows)List

11、(int rows, boolean multipleModel)8. 文本域(Textfield)答:1) 提供一单行可供编辑的文本2) 构造方法Textfield()Textfield(int columns)Textfield(String text, int columns)9. 文本区(TextArea)答:1) 提供多行多列的可编辑文本区;2) 文本区将显示水平和垂直的滚动条;3) 构造方法TextArea()TextArea(int rows, int cols)TextArea(String text)TextArea(String text, int rows, int co

12、ls)TextArea(String text, int rows, int cols, int scrollbars)10. 对话框(Dialog)答:1) 一个带有标题和边界的自由窗口; 2) 黙认的布局管理器是 BorderLayout;3) 必须拥有一个调用者;4) 可以是模式和非模式的。11. 文件对话框(File Dialog)答:1) 模式对话框;2) 用以选择文件;12. 滚动面板(Scroll Pane)答:1) 一个容器类;2) 能为单个组件自动水平或垂直滚动;13. 菜单条(MenuBar)答: 1) 一个菜单条组件是一个水平菜单,它只能加入到一个框架中,并成为所有菜单树

13、的根。2) 使用框架的 setMenuBar()方法设置菜单条;14. 菜单(Menu)答:1) 主要功能是装载菜单项;2) 继承自 MenuItem 类,因此它能装载其它菜单 ;15. 菜单项(MenuItem)答:1) 菜单项组件是菜单树的文本“ 叶”结点,它们通常被加入到菜单中,以构成一个完整的菜单;2) 通常将一个 ActionListener 加入到一个菜单项对象中,以提供菜单的行为。16. 弹出式菜单(PopupMenu)答:1) 提供了一种独立的菜单,可以在任何组件上显示;2) 可以将菜单条目和菜单加入到弹出式菜单中去。AWT 事件模型1. 什么是事件?答:1) 事件源- 事件的

14、产生器;2) 事件- 描述发生了什么的对象;3) 事件处理器 -接收事件、解释事件并处理用户交互的方法;2. 事件源答:1) 事件源是一个事件的产生者;2) 提供方法允许其它方法增加或移除事件处理器;例:在 Button 组件上点击鼠标会产生以这个 Button 为源的一个 ActionEvent, 这个ActionEvent 实例是一个对象,它包含关于刚才发生的那个事件的信息的对象。3. 事件处理器答:1) 事件处理器就是一个接收事件、解释事件并处理用户交互的方法。4. 事件类型答: 1) 对于每类事件,都有一个接口,这个接口必须由想接收这个事件的类的对象实现。这个接口还要求定义一个或多个方

15、法。当发生特定的事件时,就会调用这些方法。5. ActionEvent答:1) 双击列表项;2) 按钮被选中;3) 菜单项被选中;4) 文本域回车。6. TextEvent答:适用二行文本域同步情况7. ItemEvent答:1) 多选框选中或取消;2) 可选菜单选中或取消;3) 下拉列表项选中;4) 列表项选中。8. 事件适配器答:1) 事件适配器空实现了一个事件处理器的所有方法;2) 你只需继承并重写你感兴趣的方法即可比较 AWT 和 Swing 1.AWT 和 Swing 组件体系 a)Swing:通过在父组件上动态调用 add()和 remove()方法,来对组件树进行动态维护,因此,

16、可以存在没有父组件的子组件。 b)SWT:通过在构造函数的参数中,指定父组件,因此,不可能存在没有父组件的子组件。 2.AWT 和 Swing 组件绘制 a)Swing:通过调用组件的 paint()方法来进行组件的绘制,组件进一步对他的子组件调用 paint() ,从而完成整棵组件树的绘制。通过子类化,重写 paint()方法,可以完全定制一个组件的绘制。 b)SWT:SWT 组件只是本地平台上实际组件的一个代理,实际组件采用 win32 编程方式进行绘制,绘制的过程不在 JVM 中完成。因此,子类化也不能对绘制进行完全定制。当SWT 组件进行绘制时,他在完成了本地的绘制以后,会返回 JVM,然后对所有已注册的PaintListener 发出通知,因

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号