1.基础知识点
(1)标识符:由字母、_、$、或者数字组成,但是不能以数字开头,中间不能有空格。
(2)变量:成员变量会自动初始化,局部变量需要自己初始化。
(3)数据类型:boolean型用于进行判断,默认初始变量为false
float型需要在数字后加f
类型转换
int a=0;
double b;
double b = (double) a;
(4)break和continue语句
break语句用于终于某个语句块的执行。在循环中,可以强制退出循环。
continue语句用于循环语句中,用于终止某次循环,开始下一次循环。
2.数组
(1)创建数组
动态初始化
int[] a= new int[5];
静态初始化
int[] b=new int[]{1,2,3,4,5};
int[] c={1,2,3,4,5};
//数组的长度用length表示
同理,二维数组
int[][]=new int[3][2];
int[][] b=new int[][]{{1,1}{1,2}{1,3}};
int[][] c={{1,1}{1,2}{1,3}};
3.控制语句
(1)if语句
(2)switch语句
switch(值){
case 值1:java语句;...break;//如果值与值1相等,那么执行这里面的Java语句
case 值2:java语句;...break;//如果值与值2相等,那么执行这里面的Java语句
case 值3:java语句;...break;//如果值与值3相等,那么执行这里面的Java语句
default:java语句;//以上值都不想等,那么执行这里面的Java语句
}
注意:每一个分支后面都需要写上break表示程序在执行完分支后立即退出,不然会出现case穿透
(3)do-while语句
注意while后有,
do {
循环体;
}while(布尔表达式);
/*先执行循环体当中的代码,执行一次循环体之后,判断布尔表达式的结果,如果为true,则继续执行
循环体,如果为false循环结束。*/
4.数据库的访问
(8条消息) 数据库的访问过程(Java MySQL)_数据库访问过程描述_程序_熊的博客-CSDN博客
//加载JDBC驱动程序
Class.forName("com.mysql.jdbc.Driver");
//提供JDBC的URL
jdbc:mysql://主机名:端口号/数据库名
主机名:主机的IP(localhost或127.0.0.1)
端口号:3306(MySQL的默认值)
数据库名:需要连接的数据库名称
String url = "jdbc:mysql://127.0.0.1/DataBaseName";
String user = "root";
String pw = "123";
//与数据库建立连接
Connection conn = DriverManager.getConnection(url,user,pw);
//创建Statement实例
Statement实例:用于执行静态SQL语句
Statement stmt = conn.createStatement();
PreparedStatement实例:用于执行动态SQL语句
PreparedStatement pstmt = conn.prepareStatement(sql);
//执行SQL语句并返回结果
——Execute DDL(数据定义 create)
——ExecuteQuery DQL (select)
——ExecuteUpdate DML (insert update delete)
——execute 方法返回一个 boolean 值,以指示第一个结果的形式
true表示第一个返回值是一个ResultSet对象;
false表示这是一个更新个数或者没有结果集
5.图形界面
(1)常见组件
JPanel面板
JButton按钮
JTextFiled文本框
JLable标签
JComboBox组合框
JScrollPane滚动窗格
(2)常用布局管理器
FlowLayout流布局管理器
从上到下、从左到右依次放置部件
BorderLayout边布局管理器
把容器分为东西南北中五个区域
GridLayout网格布局管理器
容器分为大小相同的矩形区域,依次放置组件
CardLayout卡片布局管理器
主要用于处理多个组件共享同一显示空间的情况。它把容器中的所有组件处理成一系列的卡片,并摞起来形成一幅“扑克牌”,这些卡片(组件)大小相同、充满整个容器,同一时刻只能显示一个卡片(就像最前面那张扑克牌),显示的卡片可以切换。
(3)事件
单击按钮是事件,按钮是事件源。
事件处理原理:当用户执行某个操作(比如点击按钮、输入文本等)时,系统会生成相应的事件。Java程序通过注册监听器(Listener)来监听特定类型的事件,并在事件发生时执行相应的处理代码。
//定义监听器
class 监听器名 implements ActionListener{
@Override
public void actionPerformed(ActionEvent e){
//定义发生ActionEvent 事件时要执行什么。
if(e.getSource() == myButtonOne){...}
else if(e.getSource()==myButtonTwo{...}
...
}
}
//注册监听器
JButton myButtonOne=new JButton("按钮一");
JButton myButtonTwo=new JButton("按钮二");
MyActionListener listener=new MyActionListener();
myButtonOne.addActionListener(listener);
myButtonTwo.addActionListener(listerner);
6.异常
(8条消息) Java基础(四):异常处理_java异常处理的三种方法_Andyson_scy的博客-CSDN博客
常见异常:
- IOException(输入/输出异常):当发生输入/输出操作异常时抛出。
- FileNotFoundException(文件未找到异常):当试图打开一个不存在的文件时抛出。
- NullPointerException(空指针异常):当引用变量为null而尝试调用其方法或访问其属性时抛出。
7.流
(8条消息) Java SE核心API(9) —— 文件数据IO操作(文件流、缓冲流、对象流)_Robot__Man的博客-CSDN博客8.线程
线程是:一个进程中的执行场景/执行单元。
常用线程调度方法
sleep(long millis):使当前线程暂停执行指定的毫秒数,让其他线程有机会执行。在指定的时间过去后,线程会重新进入可运行状态。
yield():暂停当前正在执行的线程,并让其他具有相同优先级的线程有机会执行。如果没有相同优先级的线程,yield()方法不会产生任何效果。
join():等待调用该方法的线程终止。如果一个线程A调用了另一个线程B的join()方法,那么线程A会等待线程B执行完毕后再继续执行。
wait()、notify()和notifyAll():这三个方法是实现线程间通信的重要工具。wait()方法使当前线程进入等待状态,直到其他线程调用notify()或notifyAll()方法唤醒它。notify()方法唤醒一个等待中的线程,而notifyAll()方法唤醒所有等待中的线程。
setPriority(int priority):设置线程的优先级。优先级较高的线程在竞争资源时更有可能被调度执行。
setDaemon(boolean on):将线程设置为守护线程。守护线程是在后台运行的线程,当所有的非守护线程结束后,守护线程会自动退出。