java基础知识回顾(三)
来源:互联网 发布:朱丹 知乎 编辑:程序博客网 时间:2024/06/05 20:58
java基础 2014.3.14
十二、java语法之GUI编程:Swing
(一)
import javax.swing.*;//导包
JFrame frMain = new JFrame();//定义窗体
//描述窗体
frMain.setSize(w,h); 单位像素
frMain.setTitle(""); 标题
imagelcon icon = new imagelcon("javaproject根目录下的图片名称");
frMain.setlcon(icon.getImage());
frMain.setVisiable(true);
Toolkit.getDefaultToolKit().getScreenSize().getWidth;//设置窗体位置[居中]
new Color(r-0-255,g-0-255,b-0-255,a-0-255)
frMain.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
(二)
AWT和Swing的区别?
AWT的核心类库是用C++写的,速度快,美化效果差
Swing的核心类库是用java写的,速度慢,美化效果好
(三)
基础控件:
JButton btn1 = new JButton("默认文字");//按钮
JTextField txtName = new JTextField(20);//输入框
JLable lblName = new JLable("标签描述");//JLable标签
(四)
使用:
1.:自定义窗口类 extends JFrame
class MyFrame extends JFrame{
2:定义成员变量- 控件声明
private JButton btn ;
3:构造函数定义
Public MyFrame(){
4:构造函数中-实例化控件对象
btn = new JButton(“取消”);
5:构造函数中 – 添加控件到Frame中
this.add(btn);
6:设置窗体的属性
This.setsize
This.setLocation
This.setDefaultCloseOpration();
}
}
7:定义main函数,实例化窗口对象
Publicstatic void main(){
8:窗口对象.setVisiable(true);
MyFrame mfr = new MyFrame ();
Mfr.setVisiable(true);
}
}
(五)
布局:
1.JFrame 窗体默认布局:BorderLayout 边框布局 窗体对象.add(控件对象,BorderLayout.位置参数)
2.JPanel面板的默认布局:FlowLayout 流式布局 修改布局:窗体对象.setLayout(newFlowLayout(FlowLayout.Left方向));
3.GridLayout网格布局
Swing包关系图:
(六)
GUI编程中图形用户界面的动态交互(事件模型,接口)
class Test extends JFrame implements ActionListener{
public void actionPerformed(ActionEvent a){
//设置窗体属性
btn.addActionListener(this);//组件注册监听器
//事件处理过程
}
}
1、 键盘事件:KeyListener
2、 Keypress keyrelease ketype
{
e.getKeyCode() == 10回车{}
}
3、 txt.addKeyListener(this)
4、 自定义函数funTest()
事件模型原理:委托机制
事件的核心元素:
事件源:图形界面中的组件
事件:某种类型【单击、键盘、鼠标、失去焦点】
监听器:监听类型【监听单击、监听键盘、监听鼠标…..】
事件处理过程:事件要做什么
事件的核心类和接口 java.awt.event.*;
事件类型
单击事件
键盘事件
事件源
JButton
JTextField
事件类型
ActionEvent
KeyEvent
监听器
ActionListener
KeyListener
事件处理过程
事件的体系结构
十三、java语法之接口 interface 类的变种 可以实现多继承
1.接口的定义:完全抽象的类
Interface I接口名称{
抽象函数
public staticfinal 数据类型常量名 = 初始值;
}
2.Implements 实现
3.类既要实用继承又要实用实现
Class 类名 extends 类 implements 接口1,接口2
{}
十四、java语法之特殊关键字
(一)final 最终 如:String
1.常量定义:修饰符 static final 数据类型 常量名 = 初始值;
2.函数定义:修饰符 final 返回值类型 函数名(){}
在继承关系中fina l函数不能被重写
3.类的定义:修饰符 finalclass 类名{}
此类不能继承
(二)abstract 抽象 如:Calendar
1.函数定义:修饰符 abstract 返回值类型 函数名(); //只关注定义,不关注如何做
抽象函数只能定义在抽象类中
2.类的定义:修饰符 abstractclass 类名{} //抽象类:不能实例化对象
{
基本类的成员都有
抽象函数
}
子类继承抽象类,必须重写抽象函数
抽象类不能实例化
抽象类中无需定义构造函数
- java基础知识回顾(三)
- java基础知识回顾(一)
- java基础知识回顾(二)
- java基础知识回顾(四)
- java基础知识回顾(2)
- java基础知识回顾(3)
- java基础知识回顾(4)
- java基础知识回顾(5)
- java基础知识回顾(二)
- JAVA回顾(三)
- java基础知识回顾三--java中有三种移位运算符
- java基础知识回顾---单例模式的三种实现
- java零基础知识回顾(static小结)
- java零基础知识回顾(String)
- java零基础知识回顾(多态)
- java零基础知识回顾(泛型)
- java零基础知识回顾(集合小结)
- java零基础知识回顾(正则表达式)
- Using Delayed queues in practice
- Hprose for php(二)——服务器
- 百度测试开发电面
- [蓝桥杯历届试题] 国庆星期日
- Android程序架构目录结构介绍
- java基础知识回顾(三)
- GDAL Data Model(&转)
- GDAL 的安装介绍及使用
- C++内存分配秘籍—new,malloc,GlobalAlloc详解(Zhuan)
- GDAL学习资料 2
- 正则表达式
- QT 的信号与槽机制介绍(转)
- 题目1055:数组逆置
- 如何写Makefile文件