学习目标:
- 两个月掌握 Java 入门知识
学习内容:
常用API
学习时间:
2022.7.4 下午
学习笔记:
1. API
API(Application Programming Interface):引用程序编程接口
① 打开帮助文档② 找到索引选项,输入要学习的 API ,然后回车③ 看类所在包:因为 java.lang 包下的类在使用的时候不需要导包④ 看类的描述:这样我们就知道了类是干什么的⑤ 看类的构造方法:这样我们就可以创建对象了⑥ 看类的成员方法:这样我们就可以通过这些方法完成某些功能了
1.1 包和导包
包:文件夹
作用:对类进行分类管理
定义格式:
格式:package 包名;
例子:package com.pipi;
导包
格式:import 包名;
例子:import com.pipi;
1.2 Scanner
构造方法:Scanner sc = new Scanner(System.in);
获取一个int类型的数据:int i = sc.nextInt();
package com.pipi;
import java.util.Scanner;
public class Student {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个整数:");
int x = sc.nextInt();
System.out.println("请输入第二个整数:");
int y = sc.nextInt();
int z=x+y;
System.out.println("求和结果是:"+z);
}
}
1.3 Random
Random():创建一个新的随机数生成器
成员方法:int nextInt(int bound):获取一个int类型的随机数,范围在(0,bound)之间
package com.pipi;
//生成随机数
import java.util.Random;
public class Student {
public static void main(String[] args) {
Random r = new Random();
int number = r.nextInt(100) + 1;
System.out.println(number);
}
}
2 GUI
GUI:Graphical User Interface(图形用户接口):用图形的方式,来显示计算机操作的界面
2.1 Java.awt包
awt:抽象窗口工具包,需要调用本地系统方法实现功能,和本地系统有关联,不利于代码移植,属重量级控件
2.2Javax.swing包
在awt的基础上,建立的一套图形界面系统,提供了更多的组件,而且完全由Java实现。增强了移植性,属轻量级控件。
2.3 组件
组件是具有图形表示的对象
JButton:按钮
JLable:用来显示文本内容或者展示图片
JTextFile:文本框,输入内容
JTextArea:文本域,用于输入多行多列的数据
JPanel:面板
JFrame:顶层窗口
2.3.1 JFrame
JFrame:顶层窗口
构造函数:JFrame():构造一个最初不可见的新窗体
成员方法:
void setVisible(boolean b):显示或隐藏此窗体具体取决于参数b的值
void setSize(int width,int height):调整此组件的大小,宽度为width,高度为height,单位是像素
void setTitle(String title):设置窗体标题
void setLocationRelativeTo(Component c):设置位置,值为null,则窗体位于屏幕中央
void setDefaultCloseOperation(int operation):设置窗体关闭时的操作,3表示窗体关闭时退出应用程序
void setAlwaysOnTop(boolean alwaysOnTop):设置此窗口是否应始终位于其他窗口之上
package com.pipi;
import javax.swing.*;
public class Windowstest {
public static void main(String[] args) {
JFrame jf = new JFrame();//建立窗体
jf.setSize(400,300);//设置窗体大小
jf.setVisible(true);//设置显示窗体
jf.setTitle("皮皮的第一个窗口");//设置窗体标题
jf.setDefaultCloseOperation(3);//设置窗体关闭时的默认操作,3表示窗口关闭时退出应用程序
jf.setLocationRelativeTo(null);//设置位置,值为null,窗体位于屏幕中央
jf.setAlwaysOnTop(true);//设置窗体可见
}
}
2.3.2 JButton
JButton:按钮的实现
构造方法:JButton(String text):创建一个带文本的按钮
成员方法:
void setSize(int width.int height):设置大小
void setLocation(int x,int y):设置位置(x坐标,y坐标)
void setBounds(int x,int y,int width,int height):设置位置和大小
窗体对象.setLayout(null):取消窗体默认布局
窗体对象.add(按钮对象):把按钮添加到窗体
2.3.3 JLabel
JLabel:短文本字符串或图像的显示区域
构造方法:
JLabel(String text):使用指定的文本创建JLabel实例
JLabel(Icon image):使用指定的图像创建JLabel实例
ImageIcon(String filename):从指定的文件创建ImageIcon
文件路径:
绝对路径:完整的路径名,不需要任何其他信息就可以定位它所表示的文件
相对路径:必须使用取自其他路径名的信息进行解释
成员函数:
void setBounds(int x,int y,int width,int height):设置位置和大小
package com.pipi;
import javax.swing.*;
public class Windowstest {
public static void main(String[] args) {
//窗口的绘制
JFrame jf = new JFrame();//建立窗体
jf.setSize(400,300);//设置窗体大小
jf.setTitle("皮皮的第一个窗口");//设置窗体标题
jf.setDefaultCloseOperation(3);//设置窗体关闭时的默认操作,3表示窗口关闭时退出应用程序
jf.setLocationRelativeTo(null);//设置位置,值为null,窗体位于屏幕中央
jf.setAlwaysOnTop(true);//设置窗体可见
jf.setLayout(null);//取消窗体默认布局
//按钮的绘制
JButton btn = new JButton("按钮");
btn.setBounds(100,100,100,20);//设置按钮横纵坐标,宽度和高度
jf.add(btn);
//创建文本
JLabel jlabel = new JLabel("好好学习");
jlabel.setBounds(0,0,100,20);
JLabel jlabel2 = new JLabel(new ImageIcon("C:\\Users\\·\\Desktop\\微信图片_20220704194433.png"));
jlabel2.setBounds(0,0,400,300);
jf.add(jlabel);
jf.add(jlabel2);
jf.setVisible(true);//设置显示窗体
}
}
3. 事件监听机制
事件监听机制的组成:
事件源:事件发生的地方:按钮,窗体,图片
事件:发生了什么事情:鼠标点击事件,键盘按下事件
事件绑定:把事件绑定到事件源上,当发生了某个事件,则触发对应的处理逻辑(事件源队形.addXXXListener(事件))。
package com.pipi;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Listentest {
public static void main(String[] args) {
JFrame jf = new JFrame();
jf.setTitle("事件监听");
jf.setSize(400,300);
jf.setDefaultCloseOperation(3);
jf.setLocationRelativeTo(null);
jf.setAlwaysOnTop(true);
jf.setLayout(null);
//按钮
JButton jButton = new JButton("按钮");
jButton.setBounds(0,0,100,100);
jf.add(jButton);
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("111");
}
});
jf.setVisible(true);
}
}