- 博客(32)
- 问答 (1)
- 收藏
- 关注
原创 JAVA笔记【20130103】
一、异常Java中所有异常对象都是由于Throwable类继承而来。但在Throwable类的下一层就立即分为Error和Exception两个类。Error类层次结构描述了JAVA运行时系统的内部错误和资源耗尽错误。应用程序不该抛出这类型的错误对象。Exception类层次结构又分为两支,一支派生于RuntimeException的异常,另一支是其它异常。划分规则是由
2014-01-03 23:13:50 612
原创 JAVA笔记【20140102】
一、文件对话框Swing中提供了JFileChooser类显示一个文件对话框,JFileChooser类不是JDialog的子类,其需要调用showSaveDialog或者showOpenDialog方法来显示保存文件的对话框或者打开文件的对话框。当然也可以调用showDialog方法显示自定义标签的对话框。建立JFileChooser对象,其不需要指定父组件,允许在多个框架中
2014-01-02 23:16:27 704
原创 JAVA笔记【20131230】
一、对话框选项对话框:Swing具有一组简单的对话框,JOptionPane有4个用于显示简单对话框的静态方法showMessageDialog 显示一条消息等待用户点击OKshowConfirmDialog 显示一条消息等待用户确认showOptionDialog 显示一条消息,用户在一组选项中选择showInputDialog 显示一条消息,并
2013-12-30 21:01:21 782
原创 JAVA笔记【20131228】
一、复杂布局管理箱式布局:箱式布局比网格布局灵活一些,可以布局单行或者单列组件。对于容器Box其默认布局管理器就是箱式布局BoxLayout,也可以将JPanel设置为箱式布局。创建一个使用箱式布局的容器Box hBox = Box.createHorizontalBox(); //创建水平的箱式布局容器Box vBox = Box.createVerticalBox
2013-12-28 22:43:23 775
原创 JAVA笔记【20131225】
一、工具栏工具栏是在程序中提供快速访问常用命令的按钮。工具栏在具有边界布局或者其它支持NORTH,SOUTH,EAST,WEST约束分布的布局管理器的容器内可以被拖拽。工具栏也可以脱离框架,包含在自己的框架内。添加组件到工具栏:JToolBar toolBar = new JToolBar();toolBar.add(button);工具栏也可以用来添加Act
2013-12-25 21:26:18 737
原创 JAVA笔记【20131224】
一、滑块和JSpinner组件滑块:滑块允许连续值的选择,通常其构造方法为JSlider jslid = new JSlider(int min,int max,int initialValue);如果需要一个垂直的滑块,则构造方法为JSlider jslid = new JSlider(SwingConstants.VERTICAL,int min,int
2013-12-24 23:37:56 1120
原创 JAVA笔记【20131223】
一、复选框复选框(JCheckBox)自动的带有标识标签,复选框点击选择再点击则取消,复选框是当前焦点的时候,也可以通过按空格键来进行选择和取消选择。复选框可以通过调用setSelected()方法设置当前是选择了还是没选择,可以通过isSelected()方法获取当前是否已经选择。用户选择复选框时,会触发一个动作事件。import javax.swing.*;imp
2013-12-23 23:35:33 739
原创 JAVA笔记【20131222】
一、文本输入文本域(JTextField)和文本区(JTextArea)组件用于获取文本输入。JTextField只能接收单行文本输入而JTextArea可以接收多行文本输入。JTextField和JTextArea都继承于JTextComponent类。可以通过调用setText(String t),getText()方法设置或获取文本组件中的内容。可以通过setEditab
2013-12-22 22:28:04 696
原创 JAVA笔记【20131221】
Swing用户界面组件一、模型-视图-控制器设计模式(MVC)模型:存储内容视图:显示内容控制器:处理用户输入对于大多数组件来说,模型类实现了名字结尾为Model的接口。按钮就实现了ButtonModel接口。Swing库中的DefaultButtonModel类就实现了ButtonModel接口。每个JButton对象存储一个按钮模型对象,可使用下面方
2013-12-21 23:55:08 688
原创 JAVA笔记【20131220】
一、动作对于多个事件需连接到一个监听器上的情况,可以使用Action接口。Action接口中包含下列方法:void actionPerformed(ActionEvent e);void setEnabled(boolean b);boolean isEnabled();void putValue(String key,Object value);Object getV
2013-12-20 23:50:50 796
原创 JAVA笔记【20131219】
一、低级事件键盘事件补充:键盘中有表示动作的键,对应的KeyEvent中isActionKey方法会对是否是动作键进行判断。动作键有:HOME,END,PAGE UP,PAGE DOWN,UP,DOWN,LEFT,RIGHT,F1~F24,PRINT SCREEN,SCROLL LOCK,CAPS LOCK, NUM LOCK,PAU
2013-12-19 22:48:59 999
原创 JAVA笔记【20131218】
事件处理一、窗口事件当用户试图关闭一个框架窗口时,JFrame对象就是窗口事件WindowEvent的事件源。在窗口事件监听器WindowListener接口中包含7个方法,当发生窗口事件时,框架将调用这些方法来响应7个不同的事件。public interface WindowListener{ void windowActivated(WindowEvent e)
2013-12-18 23:58:25 957
原创 JAVA笔记【20131217】
事件处理一、事件处理基础Java中,所有事件对象都最终派生于java.util.EventObject类。不同事件源可以产生不同类别的事件对象,如按钮可以产生ActionEvent对象,而窗口可以产生WindowEvent对象。监听器对象是一个实现了特定监听器接口的类的实例。事件源是一个能够注册监听器对象并发送事件对象的对象。当事件发生时,事件源将事件对
2013-12-17 21:59:47 927
原创 JAVA笔记【20131216】
一、颜色Graphics2D类的setPaint方法可以设置图形的绘制颜色。java.awt.Color类用于定义颜色。java.awt.SystemColor类中预定义了很多与当前系统颜色相关的颜色。图形填充:直接调用Graphics2D类的fill方法,可以直接使用颜色填充图形。import javax.swing.*;import java.awt.*;imp
2013-12-16 23:46:26 1101
原创 JAVA笔记【20131215】
图形程序设计一、创建框架Java中顶层窗口叫做框架(Frame)。JFrame是极少数几个不绘制在画布上的Swing组件之一,它的修饰部件由用户的窗口系统绘制。而不是由Swing绘制。import javax.swing.*;import java.awt.*;import java.util.Locale;public class SimpleFrameTest{
2013-12-15 23:02:31 702
原创 JAVA笔记【20131214】
一、内部类使用内部类的原因:1、内部类方法可以访问该类定义所在的作用域中的数据,包括私有的数据。2、内部类可以对同一个包中的其他类隐藏起来。3、当要定义一个回调函数且不想编写大量代码时,使用匿名内部类比较便捷。使用内部类访问对象状态:内部类可以用public、private、protected、default任意一个修饰。也只有内部类才能使用pr
2013-12-14 22:15:54 606
原创 JAVA笔记【20131213】
一、接口接口是一组对类的需求描述,也即可以理解为接口只是定义了一堆方法,但其自己不实现这些方法,具体如何实现交给需要实现接口的类去做。定义接口public interface Comparable{ int compareTo(T other);}接口中的方法默认是public的。接口中不能有实例域和方法实现,但接口中可以有常量,并且默认是public static
2013-12-13 22:02:55 580
原创 JAVA笔记【20131212】
一、方法指针前面所述Field类中的get和set方法可以访问修改域,与此对应Method类中的invoke方法,允许调用当前包装在Method对象中的方法。Object invoke(Object obj,Object ... args);对于静态方法,obj设置为null即可。对于Method对象中方法,若方法的返回值为基本数据类型,则invoke返回的是对应的包装器类型,
2013-12-12 21:20:06 485
原创 JAVA笔记【20131211】
一、反射在运行时使用反射分析对象:前面所述已经可以获取类中域的名称和类型,现在获取域的值,使用Field类中的get方法,该方法返回的是一个Object对象,对象的值即为当前域的值。注:对于基本类型数据,由于不是类,所以返回时会自动打包为基本数据类型对应的类对象,当然也可以使用Field类中的getInt、getDouble等方法直接返回基本类型数据。Emplo
2013-12-11 22:30:13 508
原创 JAVA笔记【20131210】
一、反射(部分)Class类:Java运行时系统始终为所有的对象维护着一个被称为运行时的类型标识。这个信息保存着每个对象所属的类足迹。虚拟机利用运行时信息选择相应的方法执行。保存这些信息的类被称为Class。获取Class类信息的方法1、Object类的getClass方法将返回对象Class的一个实例。Employee e ; //........
2013-12-10 22:39:57 540
原创 JAVA笔记【20131209】
一、泛型数组列表ArrayList是一个采用类型参数的泛型类,所谓泛型数组,也即该数组中元素是对象,且该数组可以随着元素的增长自动扩展。声明和构造一个泛型数组ArrayList staff = new ArrayList();当然也可以提供初始容量ArrayList staff = new ArrayList(100);ArrayList使用add方法将
2013-12-09 21:32:12 587
原创 JAVA笔记【20131208】
一、抽象类抽象方法:所谓抽象方法,即只定义该方法,但不实现该方法,Java中使用关键字abstract表示该方法是抽象方法。抽象方法其实就是相当于占坑的角色,就是先霸占着这位置,到底怎么实现这个方法,由以后的子孙类们去考虑。public abstract String getDesc(){//无具体实现}包含一个或者多个抽象方法的类也必须被声明为抽象
2013-12-08 22:39:08 501
原创 JAVA笔记【20131207】
一、继承Java中使用关键字extends表示继承,Java中所有的继承都是公共继承。class Manager extends Employee{ //............}子类可以增加域、增加方法或者覆盖(重写)父类的方法,但不可以删除父类的任何域和方法。子类覆盖父类方法时,访问权限不能比父类低,也即父类方法为public,则子类覆盖父类的方法也得为publi
2013-12-07 21:45:04 630
原创 JAVA笔记【20131206】
对象构造一、重载类中方法名相同,参数不同即重载。返回类型可以不同也可以相同。Java中允许重载任何方法。二、初始化默认初始化: 在一个类的构造器里,如果没有显式的给域赋予初值,就会自动的被赋予默认值。 数值:0 布尔值:false 对象:null构造器初始化: 如果在编写一个类时没有编写构造器,则系统
2013-12-06 21:25:57 479
原创 JAVA笔记【20131205】
一、静态变量Java中使用static修饰的变量,表明内存中只有一个该变量,在类中也即意味这该变量被类的各对象所共用。例如:class Employee{ private int id ; private static int nextId = 1 ;}一般变量id与静态变量nextId,有多少个Employee对象,就有多少个一般变量id,但只有一个静态变量nextId,也即
2013-12-05 22:37:37 654
原创 JAVA中final用法【20131205】
一、final用法说明final修饰变量:对于final修饰的变量,表示该变量被赋予的引用是不可变的,可以理解为该变量只能指向一个地址,不能指向其它地址。例如: final String tempS = "zhangs"; //这表示tempS只能指向zhangs,因为String是一个基本类型,其实tempS就相当于一个常量。 final
2013-12-05 10:04:56 716
原创 JAVA笔记【20131204】
一、对象Java中对象变量都是对对象的引用。可以显式的将对象变量设置为空(null),表明这个对象变量未引用任何对象。例: Date deadLine ; deadLine = null ;类中的构造方法与类名同名,构造方法没有返回值,一个类可以有一个以上的构造方法。构造方法可以有0个及0个以上的参数。构造方法总是伴随着new操作符的执行而被调用
2013-12-04 21:39:09 666
原创 JAVA笔记【20131203】
一、Java中大数值:BigInteger 任意精度的整数 BigDecimal 任意精度的浮点数大数之间的加减乘除运算不能直接用+-*/来操作,Java中也未提供运算符重载,具体加减乘除的方法参考JDK文档二、数组Java中匿名数组: 例:new int[]{1,2,3,4,5} 匿名数组一般用于改数组只用于一次的场景中,即用了之后以后基本就不用了。
2013-12-03 22:24:17 649
原创 JAVA笔记【20131202】
一、字符串截取、字符串拼接、字符串相等 字符串截取: String greeting="hello"; String s = greeting.substring(0,3); --> "hel" 字符串拼接: greeting
2013-12-02 21:32:07 1005
空空如也
初学java遇到无法从静态上下文中引用非静态变量错误
2011-09-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人