几张图带你快速回顾JavaSE主干知识点(附有参考代码模板)

前言

Java现在也已经是学了一年了,有一些知识点已经有些记不清了,特此写下这篇文章回顾一下JavaSE的主要学习线路图,一方面是帮助我温习JavaSE的基础知识,另一方面也是给读者留下学习的线索。废话不多说,开始吧~

JavaSE知识脑图

看起来JavaSE得知识框架还是挺清晰简单的(相比于J2EE~ 呜呜TAT)
在这里插入图片描述

基本数据类型

在这里插入图片描述

集合类

在这里插入图片描述

Java异常体系结构

在这里插入图片描述

Java文件 / IO

在这里插入图片描述

线程的生命周期

在这里插入图片描述

Java网络编程(TCP)

在这里插入图片描述

Java网络编程(UDP)

在这里插入图片描述

JDBC的基本使用

在这里插入图片描述

代码模板

以下是一些常用的但可能容易忘的代码模板,记不清的时候可以来这儿查查!

JDBC数据库连接
import java.sql.*;

public class Solution {
    final static String url = "jdbc:mysql://localhost:3306/ex3";
    final static String user = "root";
    final static String pwd = "";
    final static String driver = "com.mysql.jdbc.Driver";
    final static String sql = "SELECT * FROM dept";

    private static Connection conn = null;
    private static Statement state = null;
    private static ResultSet result = null;

    public static void main(String[] args) {
        try {
            // 加载数据库驱动
            Class.forName(driver);
            // 取得数据库连接
            conn = DriverManager.getConnection(url, user, pwd);
            // 通信工具
            state = conn.createStatement();
            // 执行sql语句
            result = state.executeQuery(sql);
            // 输出执行结果
            while (result.next()) {
                System.out.print(result.getInt("DEPTNO") + "--");
                System.out.print(result.getString("DNAME") + "--");
                System.out.println(result.getString("LOC"));
            }
        } catch(Exception e) {
            e.printStackTrace();
        }
    }
}
UDP数据报收发
import java.lang.*;
import java.io.IOException;
import java.net.*;

class SendUDP {
    public static void main(String[] args) throws IOException {
        DatagramSocket socket = null;
        DatagramPacket pack = null;

        socket = new DatagramSocket(12345);
        String data = "This is a message from SendUDP... Hi~";
        pack = new DatagramPacket(data.getBytes(), data.length(), InetAddress.getLocalHost(),12346);

        socket.send(pack);

        socket.close();
    }
}


class RecvUDP {
    public static void main(String[] args) throws Exception {
        DatagramSocket socket = null;
        DatagramPacket pack = null;
        byte[] data = new byte[1024];

        socket = new DatagramSocket(12346);
        pack = new DatagramPacket(data, data.length);

        socket.receive(pack);

        System.out.println(new String(data));

        socket.close();
    }
}

TCP多线程服务器
import java.io.*;
import java.lang.*;
import java.net.*;
import java.util.Scanner;

class SendTCP {
    public static void main(String[] args) throws IOException {
        Scanner in = new Scanner(System.in);
        Socket socket = null;
        String data;

        socket = new Socket(InetAddress.getLocalHost(), 12345);
        BufferedWriter out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
        System.out.println("请输入内容:");
        while (!(data = in.next()).equals("bye")) {
            out.write(data);
            out.flush();
        }
        out.close();
        socket.close();
    }
}


class RecvTCP {
    static class ServerThread implements Runnable {
        private Socket clientSocket = null;
        byte[] b = new byte[1024];
        InputStream in = null;

        public ServerThread(Socket clientSocket) {
            this.clientSocket = clientSocket;
        }

        @Override
        public void run() {
            try {
                // 取得一个输入流
                in = clientSocket.getInputStream();
                String data = null;
                
                int n;
                while ((n = clientSocket.getInputStream().read(b)) != -1) {
                    System.out.println(new String(b, 0, n));
                }
                in.close();
                clientSocket.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) throws Exception {
        // 开启一个服务器socket
        ServerSocket serverSocket = new ServerSocket(12345);
        // 与客户端socket取得连接
        Socket clientSocket = null;

        while (true) {
            // 监听端口,取得一个tcp连接
            clientSocket = serverSocket.accept();
            // 开启一个新线程处理tcp连接
            new Thread(
                    new ServerThread(clientSocket)
            ).start();
        }
        // serverSocket.close();
    }
}

关于JavaSE就总结这么多,更多是个人温习的时候可以回顾到的。我觉得以图的形式比较好串起JavaSE的体系,更详细的文字描述性参考,可以查看这个gitHub地址

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值