二月的第三周已经过去,这一周过的非常之快,而且感觉自己的编程水平也逐渐提高,学到了很多很有用的东西。下面就来总结回顾下这一周学习的内容。
- 多线程Thread
- 多线程的概念和如何创建多线程
- 继承Thread类。
- 实现Runnable接口,但是创建线程必须借助Thread类,将Runnable类型对象作为参数传递到Thread的构造方法中。
- 线程中的几个常用的方法
- currentThread();sleep();getName();setName();setDeamon();setPriority();getPriority();
- 线程的安全问题
- 多个线程同时执行的时候,会造成数据紊乱,解决这个问题可以给对象或方法加锁synchronized;
- *对象拥有钥匙,当一个线程获得该对象的钥匙后,对象的钥匙被拿走了,其他线程从对象这里拿不到钥匙,只能等待拿到了钥匙的线程执行同步方法或同步代码块释放了钥匙给对象后才能执行。
- 死锁
- 在加锁的时候,会出现多个线程之间相互等待,造成死锁。
- 线程之间的通信
- jion();暂停当前线程,直到调用jion();方法的线程执行完毕为止,
- wait();暂停当前线程,直到另一个线程调用notify();或notifyAll();为止。
- 多线程的概念和如何创建多线程
- Swing
- 在Swing之前,JAVA有AWT,但是它严重依赖于本地系统,可移植性差,所以被抛弃,基于AWT开发了Swing
- Applet,Java编写的小应用程序,嵌入在网页中执行,提高页面的动态交互效果。
- 需要重写4个方法,init->start->stop->destory
- SWING的层次关系
- 顶层容器,JFrame
- JPanel,中间级容器,可以将小型的轻量级的组件放置在其中。
- JLabel,标签,既可以显示文本,也可以显示图片。
- JButton,按钮。
- JTextFile,文本框。
- JTextArea,文本域。
- JCheckBox,复选框。
- JRadioButton,单选框,需要将其放置逻辑分组中,ButtonGroup。
- JComboBox,下拉列表框。
- JMenuBar,菜单栏,菜单栏可以放置菜单JMenu。
- JTable,设置表格。
- JOptionPane,对话框。
- JFileChooser,文件选择框,可以弹出保存或打开文件选择框。
- 顶层容器,JFrame
- 布局及事件
- 布局,对容器如何放置组件进行定义
- 事件,监听键盘,鼠标等动作发生时,程序应当做出的反应。
- 网络编程
- UDP协议,不可靠的,无需建立连接。
- TCP协议,面向连接,可靠的传输数据。
时间: 2024-10-07 21:01:13