枚举

枚举是指将变量的值一一列举出来,变量的值只限于列举出的范围
如,一周只有7天,一年只有12个月
与单例模式不同的是,枚举中可以有一个以上的实例

阅读更多

装饰

装饰模式是设计模式中结构型模式的一种
装饰模式就是使用被装饰类的一个子类的实例
在客户端将这个子类实例交给装饰类,是继承的替代方案

阅读更多

GUI概叙

GUI(Graphical User Interface)又被称为图形用户接口
对比需要记忆操作命令的CLI(Command Line Interface)
它显得更为方便与直观

Java相关包

java.awt : (abstract window ToolKit)抽象窗口工具包
    直接属于java基本类库,需调用本地系统方法实现功能,属重量级控件
javax.swing : (javax代表扩展包)
    属于java扩展包
    在AWT的基础上建立的一套图形界面系统,其提供了更多组件,且完全由Java实现
    增强了移植性,属于轻量级控件(即与系统的关联(耦合)性低)

继承体系图

窗口相关

框架相关

窗体布局

Java的窗体布局共有
    流式布局、边界布局、网格布局、网格包布局、卡片布局....

一个按钮

相关方法

1
2
3
public void addActionListener(ActionListener l)//添加指定的动作监听器
public void removeActionListener(ActionListener l)//移除指定的动作监听器
public ActionListener[] getActionListeners()//获取当前所有注册的监听器的数组

一个文本

更改背景颜色

鼠标事件

键盘事件

在键盘适配器类中有关于键盘按键操作的方法
分别为 按下: Pressed 释放: Released 

菜单

与菜单有关的类共有 MenuBar 菜单栏,Menu 菜单,以及MenuItem 菜单项
其中菜单栏可以包含菜单和菜单项(如果菜单中只有一项)
菜单可以包含菜单(多级目录)和菜单项
然后就是关于窗体的设置,awt是不支持swing的菜单栏的
如果要使用swing的菜单栏,那么得使用swing的窗体

netBeans

netBeans是Sun公司提供的一款awt编译器,使用它能快速的设置awt界面
如何修改窗体图标 :
    需要用到ToolKit类,这个类是所有AWT的实际实现抽象超类
    通过这个类的getDefaultToolKit可以获得该抽象类的子类实现
    使用方法getImage通过图片路径获得图片对象
    给窗体设置Icon
如何设置窗体居中
    首先获取当前设备的屏幕宽度与高度,通过ToolKit的getScreenSize方法
    获得窗体宽高
    然后两者相减/2即可
如何修改窗体的皮肤
    找到UIManager类,它用于管理外观
    使用setLookAndFeel 设置外观,设置外观的字符串
    使用系统默认的外观以及黑马增送的JTattoo或者liquidInf
        UIManager.setLookAndFeel(MyLookAndFeel.JTATTOO_ACRYL);
        我这里下载了一个仿mac的jar,作者的访问地址如下:

DownLoad_BeautyEye

弹出提示

在做一些数据处理的时候可能出现错误,比如做一个简单的四则运算
那么输入的内容必定是数字
    此时可以设置文本栏只能输入数字
    或者输入其他内容点运算的时候弹出提示信息
明显的第二种方式用户体验会更好
这时候需要借助一个JOptionPane

窗体跳转

比如有个登录窗口,点击注册那么应该跳转到注册窗口
    最简单的实现,点击时设置登录窗口的显示为false
    并设置注册窗口的显示为true
    但是这样做并不好,这样其实是将窗口隐藏,内存中依然存在
    应该将登录窗口dispose,这个方法属于Window类,这时候这个窗体的资源将会被释放