在学习对象之前,我们先了解下对象和变量的区别和相同。
JAVA中完成计算任务的步骤有如下:
1、声明变量
2、存储数据到变量中
3、读取变量中的数据执行计算
4、输出结果
在JAV中,数据不仅可以储存在变量中也可以储存在对象中
数据 -> 变量
|__>对象.字段
对象的数据保存在对象的字段中
- 定义
对象相当于一个可以想象的物体 ,它可以有形也可以无形。
对象具有属性,例如:按钮或标签这类GUI对象具有属性,属性是对象的特性。例如:按钮可以有名称,宽度高度和标题等属性,窗口可以有标题,宽度高度,背景颜色等属性。 除此之外,对象还具有行为方式, 它们用来描述对象可以完成的事。 如 按钮可以被禁用,可以进行设置标题的操作, 标签可以用来显示文本,窗口可以改变大小,显示和消失。
- 用法
类或对象—(发送消息或参数)—> 方法 (方法先执行,可以选择返回或者不返回数据)—–> 类或对象
学过c语言的人可以这样理解, 类或对象相当于一个封装好的函数,我们可以对类或对象进行调用,从而实现各种操作。
已经学过的类有 Math类,JOptionPane类,String类,Character类,System类
下面学习JFrame类
JFrame可以用来创建窗口
在JAVA中,窗口被称为框架
- 实际操作
操作步骤有: 声明对象->创建对象->发送信息给对象(调用对象的方法) ->创建窗口对象–>执行各种窗口操作
1 ) 创建窗体
2 ) 设置标题
3)设置大小
4)先是窗体
我们来看一个代码实例:
Import java.awt.*;
Import java.swing.*;
Public class SimpleFrame{
Public static void main(String[] args){
Jframe frame //声明一个名为frame的JFrame类对象
Frame = new Jframe(); //创建对象
Frame.setTitile("第一个Jframe窗口"); //发送消息给对象,(调用对象的方法)作用为设置窗口的标题
Frame.setSize(800,900); //设置窗体大小
Frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE); //设置关闭窗体关闭程序,其中 EXIT_ON_CLOSE为JFrame中含有的常量
Frame.setVisible(true); //显示窗口
}
}
- 代码分析
1.声明对象变量
程序使用每个对象都需要变量名字,方法和声明基本数据类型变量类似,不同的是指定为所属类。
类名 对象名;
2. 创建方法
对象的声明语句并没有实际创建对象,而只是声明用来引用对象的名称。如:
Jframe.frame;
这条语句声明了一个变量frame, 变量frame的类型为Jframe,该变量并未初始化,frame 可被用来引用一个Jframe 对象 。对象在没有创建之前是不可使用的,也就是对象为初始化之前不可使用。创建对象要使用new标识符
语法为
new 类名(参数列表)
其中类名为对象所属的类的名称,参数列表为传递给调用方法的参数
new可在赋值语句中使用。
3.传递消息(调用方法)
创建对象之后,我们可以开始给对象发送消息 ,语法为:
对象.方法名(参数列表); //调用方法
**⒈设置窗口标题**
Frame.setTitle(" 字符串");
**⒉设置窗口大小**
Frame.setSize(宽度,高度);
**⒊关闭窗口时退出程序**
Frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
//调用frame对象的setDefaultCloseOperation方法,并传递参数Jframe.EXIT_ON_CLOSE给该方法
**⒋显示或隐藏窗口**
Frame.setVisible(布尔值);
接下来就是对JFrame类的进一步使用
创建一个JFrame窗口,设置背景颜色为黄色,使用两个标签对象,在窗口中显示文字和对象
代码:
Import java.awt.*;
Import java.swing.*;
Public class SimpleFrame {
Public static void main(String[] args){
Jframe frame = new Jframe(); //声明JFrame对象并创建
Frame.setTitle("第二个JFrame窗口"); //设置窗口标题
Frame.setSize(800,900);
Container contenPane=frame.getContenPane(); //获取JFrame对象frame的内容面板
contenPane.setBackground(Color.PINL); //设置内容面板颜色
Jlabel l1 = new Jabel(); //创建第一个标签
L1.setText("你好,这是第一个标签"); //调用方法给标签设置文本
L1.setLocation(35,0); //设置位置
L1.setSize(550,68);//设置标签大小
L1.setFont(new Font("宋体",Font.BOLD,28));//设置字体
L1.setForeground(Color.BULE);//设置前景色
L1.setHorizontalAlignment(JLabel.CENTER);//设置为中间对齐
Contenpane.add(l1); //添加标签1到内容面板
Jlabel l2 = new Jabel(); //创建第二个标签
L2.setIcon(new.ImageIcon("D:\\my.jpg")); //设置图像
L2.setBounds(54,120,150,100); //设置位置和大小
L2.setHorizontalAlignment(JLabel.CENTER);//设置为中间对齐
contanePane.add(l2); //添加标签2到内容面板
Frame.setVisible(true); //显示窗口
}
}
“`
知识点
1)设置窗口的背景颜色
Frame.setBackground(Color.PINK);
2)标签对象和JLabel类相关
Jlabel 对象名 = new Jlabel();
标签用到了一个新类Jlabel 。它可以用来显示文字或者一副图片,或者两者都显示的组件
//设置标签显示文本
L1.setText("字符串");
//设置标签的位置
L1.setLocation(35,0);
//设置标签的大小
L2.setSize(500,600);
//设置标签内显示文字的字体
L1.setFont(new Font("宋体",Font.BOLD,28));
以上语句调用标签对象中setFont方法,而且使用了new 创建了一个Font对象,并且初始化了三个参数,这些参数会传递给调用的方法。
//设置前景色
l1.setForeground(Color.BLUE);
//设置对齐方式
L1.setHorizontalAlignment(JLabel.CENTER);
左对齐为LEFT,右为RIGHT ,中间为CENTER,这里用的是中间对齐
//显示图像
L1.setIcon(new ImageIcon("图像位置"));
这里创建了一个 imageIcon 对象,以该对象为参数调用JFabel组建中的.setIcon方法
//将组件添加到窗口(容器)
contenPane.add(l1);
这里窗口为一个容器对象(ContenPane 对象,contenPane为一个内容面板的对象),容器对象可容纳组件,我们可以调用容器对象中的add方法将参数指定的组件添加到容器对象中。语法为:
容器对象名.add(组件对象名);