【实习总结】Java学习最佳实践!

简介: 【实习总结】Java学习最佳实践!

Java基础

**学习建议:**从个人学习的角度而言,在这个阶段不要一开始就抓细节,最好是学习两遍:

第一遍 在Java刚入门时,最重要的工作就是熟悉Java的语法结构、命名方式、常用库等,形成对整个Java语言的一种感觉;

第二遍 再次学习一遍教程,在这个过程最好可以在IDEA中进行代码的编写和运行,进行诸如Debug之类的操作,从而对Java语法进一步熟悉。

学习教程:

廖雪峰的官方网站

廖老师的Java课程很全,在初学阶段学习只需要关注以下几个章节:Java快速入门、面向对象编程、集合、IO。

备注:我个人初学编程语言时不太喜欢看视频,有这方面爱好的初学者可以考虑搜索狂神系列,看过几节视频,挺不错的。

查漏补缺:

String、StringBuilder、StringBuffer的区别

——这三者需要仔细辨析,并在使用的时候选择合适的对象。

数组和列表的区别

——在Java中,数组和列表是不同的。

Java进阶

**学习建议:**在度过了基础阶段之后,要做的事情就是不断加深对Java知识的理解和补充,这个时候不要局限于某一个固定的教程,而要多去搜索一些相关的博客去看、去理解,看到好的文章要收藏并总结。

在这个阶段主要学习Java的反射、注解、泛型、多线程、Maven、异常、集合框架等,另外还要注意语法格式。

学习资料:

编码规范

阿里Java开发手册

——讲解了在Java项目开发中需要注意的命名格式、编码规约等。

反射

面试中常问的Java反射机制

——这篇文章从Java反射使用的角度来讲解,适合入门。

Java反射机制入门、使用、原理

——正如题所言,这篇文章更注重讲解反射机制的原理,即“反射”这个机制,底层到底是通过什么函数实现的?

注解

如何写自定义注解

——能够写自定义注解,那就说明对注解这个概念已经理解的十分透彻了,并且能够实现它。

一文搞懂Java注解

——当时笔者所写的一份总结性文章,适合进行查阅。

对线面试官

——这篇文章主要是从面试的角度来讲解Java注解。

泛型

Java泛型详解

——从为什么需要泛型入手,讲解了泛型使用的各种情况,并举例说明。

关于泛型的补充

——建议学习了之前的泛型教程,再看这个,算是一个总结和补充。

多线程

Java多线程学习

——这一篇文章足够了,Java多线程由Runable接口和Thread类(其实也是实现了Runable接口)实现,讲解相应的多线程知识。

异常

深入理解Java异常

——异常是什么?就是阻止程序继续运行的bug!当遇到异常时,系统会生成异常对象,通知程序进行处理。注意区分它和error的区别。

集合框架

Java集合框架简述

——先简要了解Java集合框架的大致情况

Java集合框架综述

——Java集合框架的根接口是collection和map,由此衍生出四种集合:list、set、queue、map。学习集合框架的重点是结合java.util源码,理清其中的继承、实现关系。

java.util源码

——结合源码去理清各个集合类的关系。

hashmap底层原理

——hashmap的底层其实就是数组加链表,有一点值得注意的是,在hashmap中判断同一个键值是根据hashcode来的,所以只是重载equals是不可取的。

JVM相关

Class文件结构

JVM值Class文件结构

——从一个实际的二进制文件入手,讲解Class文件的构成和组成部分。

类加载过程

JVM类加载的五个过程

——Java类加载过程分为五个阶段:加载、验证、准备、解析、初始化,着重各个阶段所进行的工作。

GC垃圾回收原理、策略

JVM垃圾回收机制总结

——垃圾回收主要有两种算法:引用计数算法、可达性分析算法,同时介绍了常用的垃圾收集算法。

JVM性能调优

——JVM性能调优的原理是对GC回收各区域的大小进行相应的调整(不同的程序对于GC各区域的使用情况各不相同,JVM调优就是据此进行定制性优化)。

Java8新特性

Stream

Java 8 Stream教程

——Java8新特性其中一个就是Stream,是函数式编程的实现,可以进行流式数据操作。

Lambda

Lambda表达式

——Lambda表达式,又称为闭包,可以使代码更加简洁紧凑

Optional类

Optional类

——Optional类是Java8函数式编程的组件。

方法引用

方法引用

——方法引用跟C++的域名空间有几分类似,可以通过类名::方法来直接定位某个方法。

单元测试

单元测试最佳实践

——单元测试是项目开发阶段必备的阶段,良好的单元测试可以提高代码的可用性,提高软件开发效率。

单元测试框架:Junit、Mockito

——java最常用的两个测试框架就是Junit和Mockito。

系统设计

设计模式

**前言:**设计模式是在面向对象领域总结成的系统架构、代码编写的经验,是必备的专业素养。

教程

《大话设计模式》书籍

或总结的笔记:大话设计模式新讲

系统设计理念

系统设计入门

——从基础的系统设计原则入手,一步一步讲解系统设计的方法和注意事项,如CAP理论、CDN、分片分库等。

Spring相关

什么是Spring?

——这个是对Spring和SpringBoot最粗略的介绍,方便新手对其形成一个基本概念。

Spring常见面试题

——通过这些面试问题,可以进一步回顾相应的知识点,补充其细节。

常用中间件

Kafka

Kafka底层原理分析

——kafka是Java常用的消息中间件。

Web开发

**前言:**现在常用的Web开发有两种主流方式:MVC与前后端分离。

不管是MVC还是前后端分离,其核心理念就是前后端各自负责自己擅长的东西。

教程:

Web从手写框架到SpringMVC

——廖老师的Web开发教程是学习依以来见过讲的最清楚最透彻的,并附有全套的代码。

不错的项目

新峰商城项目

——基于SpringBoot的在线商城系统,可以直接在本地运行,具有很高的学习价值。

(未完待续)

相关文章
|
26天前
|
安全 Java 数据库连接
Java中的异常处理机制及其最佳实践
【8月更文挑战第12天】在Java的世界里,异常处理是维护程序健壮性的关键环节之一。它不仅涉及到错误检测,还关乎如何优雅地恢复或报告错误。本文将深入探讨Java的异常处理机制,包括异常类型、捕获异常的策略以及异常的最佳处理实践。我们将一起学习如何通过有效的异常管理来提升代码质量和用户体验。
|
12天前
|
监控 Java 测试技术
Java并发编程最佳实践:设计高性能的多线程系统
Java并发编程最佳实践:设计高性能的多线程系统
29 1
|
4天前
|
监控 Java 调度
【Java学习】多线程&JUC万字超详解
本文详细介绍了多线程的概念和三种实现方式,还有一些常见的成员方法,CPU的调动方式,多线程的生命周期,还有线程安全问题,锁和死锁的概念,以及等待唤醒机制,阻塞队列,多线程的六种状态,线程池等
26 6
【Java学习】多线程&JUC万字超详解
|
23天前
|
前端开发 Java 编译器
【前端学java】如何从前端视角快速学习Maven
【8月更文挑战第12天】如何从前端视角快速学习Maven
36 2
【前端学java】如何从前端视角快速学习Maven
|
12天前
|
JSON Java fastjson
Java日志通关(五) - 最佳实践
作者日常在与其他同学合作时,经常发现不合理的日志配置以及五花八门的日志记录方式,后续作者打算在团队内做一次Java日志的分享,本文是整理出的系列文章第五篇。
|
13天前
|
安全 Java 测试技术
Java 后台开发的最佳实践与技巧
Java 后台开发的最佳实践与技巧
22 2
|
17天前
|
安全 Java UED
Java线程池的实现原理及其在业务中的最佳实践
本文讲述了Java线程池的实现原理和源码分析以及线程池在业务中的最佳实践。
|
20天前
|
安全 Java 测试技术
深入探讨Java安全编程的最佳实践,帮助开发者保障应用的安全性
在网络安全日益重要的今天,确保Java应用的安全性成为了开发者必须面对的课题。本文介绍Java安全编程的最佳实践,包括利用FindBugs等工具进行代码审查、严格验证用户输入以防攻击、运用输出编码避免XSS等漏洞、实施访问控制确保授权访问、采用加密技术保护敏感数据等。此外,还强调了使用最新Java版本、遵循最小权限原则及定期安全测试的重要性。通过这些实践,开发者能有效提升Java应用的安全防护水平。
27 1
|
22天前
|
存储 缓存 安全
深度剖析Java HashMap:源码分析、线程安全与最佳实践
深度剖析Java HashMap:源码分析、线程安全与最佳实践
|
27天前
|
存储 缓存 算法
优化Java后台性能的五大最佳实践
在高并发环境中,Java后台系统的性能至关重要。本文探讨了五种有效的优化方法,包括JVM调优、数据库连接池配置、代码优化技巧、异步处理的使用以及缓存机制的实现。通过这些实践,开发人员可以显著提升系统的响应速度和稳定性。
下一篇
DDNS