当前位置: 首页 > 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&…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...

synchronized 学习

学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

使用分级同态加密防御梯度泄漏

抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

#Uniapp篇:chrome调试unapp适配

chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...

Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...

区块链技术概述

区块链技术是一种去中心化、分布式账本技术,通过密码学、共识机制和智能合约等核心组件,实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点:数据存储在网络中的多个节点(计算机),而非…...

若依登录用户名和密码加密

/*** 获取公钥:前端用来密码加密* return*/GetMapping("/getPublicKey")public RSAUtil.RSAKeyPair getPublicKey() {return RSAUtil.rsaKeyPair();}新建RSAUti.Java package com.ruoyi.common.utils;import org.apache.commons.codec.binary.Base64; im…...

麒麟系统使用-进行.NET开发

文章目录 前言一、搭建dotnet环境1.获取相关资源2.配置dotnet 二、使用dotnet三、其他说明总结 前言 麒麟系统的内核是基于linux的,如果需要进行.NET开发,则需要安装特定的应用。由于NET Framework 是仅适用于 Windows 版本的 .NET,所以要进…...