当前位置: 首页 > news >正文

【codequ】Java学习路线整理(韩顺平)

文章目录

  • Java学习路线
    • 一、Java基础
      • 1.建立编程思想
        • Java概述
        • 变量
        • 运算符
        • 控制结构
        • 数据、排序和查找
        • 面向对象编程(基础)
        • 面向对象编程(中级)
        • 项目&学以致用
      • 2.提升编程能力
      • 3.分析需求,代码实现能力
    • Java8新特性
    • 二、Java高级
    • 三、JavaWEB
    • 四、主流的框架和项目管理
    • 五、分布式 微服务 并行架构
    • 六、DevOps(开发运维一体化)自动化部分管理项目,解决CI/CD
    • 七、大数据技术(可以弱化)
    • 八、项目
    • 九、大厂的高频面试题
    • 十、底层源码/内核研究
    • 十一、编程基础的扩展(科班)

Java学习路线

一、Java基础

1.建立编程思想

Java概述

  • 如何快速学习Java技术
  • Java历史
  • Java特点
  • Sublime
  • Java运行机制
  • JDK
  • 转义字符
  • Java开发规范
  • Java API

变量

  • 数据类型
  • 变量基本使用
  • 数据类型转换

运算符

  • 运算符介绍
  • 算数运算符
  • 关系运算符
  • 逻辑运算符
  • 赋值运算符
  • 三元运算符
  • 优先级
  • 二进制
  • 位运算符

控制结构

  • 顺序
  • 分支(if else switch)
  • 循环(for,while,do while)
  • break
  • continue
  • return

数据、排序和查找

  • 数组
  • 排序
  • 查找

面向对象编程(基础)

  • 类与对象
  • 成员方法
  • 成员方法传参机制
  • overload
  • 可变参数
  • 作用域
  • 构造器
  • this

面向对象编程(中级)

  • 访问修饰符
  • 封装
  • 继承
  • 多态
  • Super
  • overwrite
  • Object类详解
  • 断点调试

项目&学以致用

2.提升编程能力

  • 面向对象编程(高级)
    • 类变量和类方法
    • 理解main方法语法
    • 代码块
    • 单例设计模式
    • final关键字
    • 抽象类
    • 接口
    • 内部类
  • 枚举和注解
    • 自定义类实现枚举
    • enum关键字实现枚举
    • JDK内置的基本注解类型
    • 元注解:对注解进行注解
  • Exception
    • 异常的概念
    • 异常体系图
    • 常见的异常
    • 异常处理
    • 自定义异常
    • throw和throws的对比
  • 常用类
    • 包装类
    • String
    • StringBuffer
    • StringBuilder
    • Math
    • Date、Calendar、LocalDate…
    • System
    • Arrays
    • BigInteger、BigDecimal
  • 集合
    • 集合框架体系
    • Collection
      • List
        • ArrayList
        • LinkedList
        • Vector
      • Set
        • HashSet
        • LinkedHashSet
        • TreeSet
    • Map
      • HashMap
      • HashTable
      • LinkedHashMap
      • TreeMap
      • Properties
    • Collections
  • 泛型
    • 泛型语法
    • 自定义泛型
      • 泛型类
      • 泛型接口
      • 泛型方法
    • 泛型继承和通配符
  • 线程(基础)
    • 线程介绍
    • 线程使用
      • 继承Thread
      • 实现Runnable
    • 线程方法
    • 线程生命周期
    • Synchronized
    • 互斥锁
    • 死锁
  • IO流
    • 文件
      • 概念
      • 常用操作
    • IO流原理及流分类
    • 节点流和处理流
    • 输入流
      • InputStream
        • FileInputStream
        • BufferedInputStream
        • ObjectInputStream
      • Reader
        • FileReader
        • BufferedReader
        • InputStreamReader
    • 输出流
      • OutputStream
        • FileOutputStream
        • BufferedOutputStream
        • ObjectOutputStream
      • Writer
        • FileWriter
        • BufferedWriter
        • OutputStreamWriter
    • Properties类
  • 项目&学以致用

3.分析需求,代码实现能力

  • 网络编程
    • 网络基础
    • InetAddress
    • Socket
    • TCP编程
      • 字节流
      • 字符流
    • UDP编程
  • 反射
    • 反射机制
    • Class类
    • 类的加载
    • 反射获取类的结构信息
      • Class
      • Field
      • Method
      • Constructor
      • 访问属性
      • 访问方法
  • Mysql基础,后面讲高级篇(优化、集群和项目实战)
    • MySQL安装和配置
    • 数据库
      • 创建
      • 查看、删除数据库
      • 备份恢复数据库
      • 创建
      • 删除
      • 修改
    • MySQL数据类型
    • CRUD
      • Insert
      • Update
      • Delete
      • Select
        • 单表
        • 多表
    • 函数
      • 统计函数
      • 时间日期
      • 字符串函数
      • 数学函数
      • 流程控制
    • 内连接
    • 外连接
    • 约束
      • not null
      • primary key
      • unique
      • check
      • 自增长
    • 索引
      • 主键索引
      • 唯一索引(UNIQUE)
      • 普通索引(INDEX)
      • 全文索引
    • 事务
  • JDBC和连接池
    • JDBC概述
    • JDBC快速入门
    • JDBC API
      • PreparedStatement
      • DriverManager
      • Statement
      • ResultSet
    • JDBCUtils
    • 事务
    • 批处理
    • 连接池
      • DataSource
      • DBCP
      • C3P0
      • Proxool
      • BoneCP
      • Druid
    • Apche-DButils
    • DAO增删改查-BasicDao
  • 正则表达式(非常实用)
    • 快速入门
    • 正则表达式基本语法
    • 三个常用类
      • Pattern
      • Matcher
      • PatternSyntaxException
    • 分组、捕获、反向引用
    • 元字符
      • 限定符
      • 选择匹配符
      • 分组组合和反向引用符
      • 特殊字符
      • 字符匹配符
      • 定位符
    • 应用实例
  • Java8 Java11 新特性
    • Java8新特性

  • 项目&学以致用

二、Java高级

三、JavaWEB

四、主流的框架和项目管理

五、分布式 微服务 并行架构

六、DevOps(开发运维一体化)自动化部分管理项目,解决CI/CD

七、大数据技术(可以弱化)

八、项目

九、大厂的高频面试题

十、底层源码/内核研究

十一、编程基础的扩展(科班)

相关文章:

【codequ】Java学习路线整理(韩顺平)

文章目录Java学习路线一、Java基础1.建立编程思想Java概述变量运算符控制结构数据、排序和查找面向对象编程(基础)面向对象编程(中级)项目&学以致用2.提升编程能力3.分析需求,代码实现能力Java8新特性二、Java高级…...

服务器容器配置日志(Linux+x86_64+Ubuntu18.04+CUDA11.0+python3.7)

一、创建并进入容器 (平台使用教学详细,这部分略写) 登上服务器后,打开终端输入如下进入自己建的容器 ssh -p XXXXX root10.XXX.XXX.XXX //按自己的宿主机端口写二、安装Conda(miniconda3) &#xff08…...

2023年美赛赛题思路分析

2023年的赛题A-F题的整体难度不算太难,难度在于数据的收集上。整体难度上来看,难度上F题难度最小,建议直接上手。本次先给大家分享一些数据网站,在对各题做简单的思路分析。1、美国国家海洋和大气管理局Homepage | National Ocean…...

[C++]服务器与客户端建立连接与检测断开的demo

该程序在IP127.0.0.1以及端口5000环境下测试 有一段时间没有在Windows下用C进行网络编程了,这段日子都在做QT的网络编程和OpenCV的图像识别。 今天重新写个Windows下C的,基于TCP的双端连接建立与断开检测的demo,巩固下自己Windows下的网络编程…...

包教包会vue3+ts状态管理工具pinia

一、Pinia介绍 定义:pinia是和vuex一样的状态管理工具 语法:和 Vue3 一样,它实现状态管理有两种语法:选项式API 和 组合式API 支持:vue2、typeScript、devtools 二、使用步骤 1.安装 pnpm add pinia yarn add pin…...

Generated columns cannot be used in COPY

错误如下DBD::Pg::db do failed: ERROR: column "transtype" is a generated columnsec., avg: 2520 recs/sec), REPORTSINTERMEDIATETABLE in progress.DETAIL: Generated columns cannot be used in COPY. at /usr/local/share/perl5/Ora2Pg.pm line 15125.FATAL: …...

Amazon S3简介

前言: 这段时间来到了某大数据平台,做平台技术底座封装和一些架构等等,有结构化数据也有非结构数据,涉及到很多技术,自己也私下花时间去研究了很多,有很多纯技术类的还是需要梳理并记录,巩固以及…...

MySQL索引类型——有五种

文章目录前言一、MySQL中的索引类型有以下几种1.1 普通索引1.1.1 直接创建索引1.1.2 修改结构的方式添加索引1.1.3 创建表的时候同时创建索引1.1.4 删除索引1.2 唯一索引1.2.1 创建唯一索引1.2.2 修改表结构1.2.3 创建表的时候直接指定1.3 主键索引1.4 组合索引1.5 全文索引1.5…...

CloudCompare 二次开发(5)——非插件中的PCL环境配置(均匀采样为例)

目录 一、概述二、CMakeLists.txt三、源码编译四、代码示例五、结果展示一、概述 在进行CloudCompare二次开发的时候,可以直接在CloudCompare的核心功能中添加自己的算法,比插件式的算法集成要方便得多。因此,这里主要记录CloudCompare非插件式二次开发配置PCL,并给出具体开…...

停车辅助系统的技术和变化

各种各样的停车辅助系统已经存在了很长时间,但用户经常在不知道什么技术以及它是如何工作的情况下使用它们。 今天我们依次来谈谈停车辅助系统是什么,怎么发展以及如何应用的。 ​ 1.手信号 您可能会想,“为什么手信号是停车辅助系统&#x…...

扬帆优配|日均客运量恢复,民航业加速复苏,外资买入2股超亿元

春运民航客运量康复至疫情前七成。 2月16日,民航局举行2月例行新闻发布会。会上介绍,自1月7日至2月15日,春运40天,民航运送旅客5523万人次,日均客运量138万人次,同比去年春运添加39%,康复至2019…...

【PyTorch】教程:torch.nn.ModuleDict

Containers-ModuleList CLASS torch.nn.ModuleDict(modulesNone) 将所有的子模块放到一个字典中。 ModuleDict 可以像常规 Python 字典一样进行索引,但它包含的模块已正确注册,所有 Module 方法都可以看到。 ModuleDict 是一个有序字典。 Parameters …...

Git、小乌龟、Gitee的概述与安装应用超详细(组长与组员多人开发版本)

目录 一、概述 1.什么是Git? 2.Git历史来源 3.Git的优点? 4.什么是版本控制? 5.版本控制工具种类? 6.Git工作机制 7.Git、小乌龟、Gitee、凭据管理器的简单介绍 二、Git下载安装 下载Git 安装Git 安装完成后查看版本 三、下载小…...

【java 高并发编程之JUC】高阶JUC特性总结

1 线程中断机制 1.1 什么是中断? 首先 一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。所以,Thread.stop, Thread.suspend, Thread.resume 都已经被废弃了。 其次 在Java中没有办法立即停止一条线程,然…...

行业分析| 智能无人自助设备

智能无人自助设备运用二维码技术、音视频通信技术和AI智能技术等相结合,提供了无人超市、自动售货机、智能快递柜等。当下很多商业地区或社区,都放置了智能无人自助设备,不仅可以为商家节省时间和精力、提升运营环境,也可以为众多…...

使用契约测试得不偿失?试试契约先行开发

契约维护的难题 如今微服务凭借其灵活、易开发、易扩展等优势深入人心,不同服务之间的集成和交互日渐繁多且复杂。这些服务之间交互的方式是多样的,常见的有 HTTP 请求和消息队列。在它们交互的过程中,会有服务的版本演进,交互信…...

函数编程之Function

文章目录前言一、Function是什么?二、Function 怎么用?1.简单使用2.真正的强大之处总结前言 在java8之后,我已经习惯了开始用stream()方式编程,但是对于新引入的其他功能,还是不清楚,今天经历了一个编程问题后,让我对于Function() 这个函数有了新的认知; 一、Func…...

Vue 双向绑定原理

Vue2 双向绑定原理 mvvm 双向绑定,采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty() 来 劫持各个属性的 setter、getter,在数据变动时发布消息给订阅者,触发相应的监听回调。 几个要点: 1&#…...

【数据治理-03】无规矩不成方圆,聊聊如何建立数据标准

无规矩,不成方圆!数据标准(Data Standards)是保障数据的内外部使用和交换的一致性和准确性的规范性约束,作为数据治理的基石,是绕不开的一项工作,如此重要的活如何干,咱们一起聊聊。…...

dos常用命令

DOS(磁盘操作系统)命令,是DOS操作系统的命令,是一种面向磁盘的操作命令,主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其它命令。 使用技巧 DOS命令不区分大小写,比如C盘的Program Files&…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法

树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...

Java 加密常用的各种算法及其选择

在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

微服务商城-商品微服务

数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

C++使用 new 来创建动态数组

问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...

20个超级好用的 CSS 动画库

分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...