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

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...

反射获取方法和属性

Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...

20个超级好用的 CSS 动画库

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

Mysql8 忘记密码重置,以及问题解决

1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...