Giter Site home page Giter Site logo

tobetopjavaer's Introduction

To Be Top Javaer - Java工程师成神之路

主要版本 更新时间 备注
v4.0 2022-05-20 知识体系完善,知识点补充
v3.0 2020-03-31 知识体系完善,在v2.0的基础上,新增20%左右的知识点
调整部分知识的顺序及结构,方便阅读和理解
通过GitHub Page搭建,便于阅读
v2.0 2019-02-19 结构调整,更适合从入门到精通;
进一步完善知识体系;
新技术补充;
v1.1 2018-03-12 增加新技术知识、完善知识体系
v1.0 2015-08-01 首次发布

Java成神之路全套面试题——围绕成神之路,500多道题,60多万字>>>

Java八股

扫码下单后,按照短信提示操作即可。

目前正在更新中...

欢迎大家参与共建~

联系我们

欢迎关注作者的公众号,可以直接后台留言。

公众号后台回复:"成神导图",即可获取《Java工程师成神之路最新版思维导图》

在线阅读地址

GitHub Pages 完整阅读:进入

Gitee Pages 完整阅读:进入 (国内访问速度较快)

关于作者

Hollis,阿里巴巴技术专家,51CTO专栏作家,CSDN博客专家,掘金优秀作者,《深入理解Java核心技术》作者,《程序员的三门课》联合作者,《Java工程师成神之路》系列文章作者;热衷于分享计算机编程相关技术,博文全网阅读量上千万。

开源协议

本着互联网的开放精神,本项目采用开放的[GPL]协议进行许可。

参与共建

如果您对本项目中的内容有建议或者意见

如果你对本项目中未完成的章节感兴趣

欢迎提出专业方面的修改建议及供稿,供稿只接受原创

请直接在GitHub上以issue或者PR的形式提出

如果本项目中的内容侵犯了您的任何权益,欢迎通过邮箱(hollischuang@gmail)与我联系

tobetopjavaer's People

Contributors

alpssnow avatar anlostsheep avatar billwang22 avatar changfubai avatar craneyuan avatar dearsn avatar dramatist avatar easepan avatar evanwang1021 avatar hellozzj avatar hollischuang avatar ipofss avatar jihch avatar kuangcp avatar lbs0912 avatar liujinmu avatar lowking avatar luo-zhan avatar miles-yan avatar oldratlee avatar onepiecejoker avatar pdfg12301 avatar quentinhsu avatar shengguozhou avatar stunievi avatar sunao-oct avatar timo1160139211 avatar vio-lin avatar wynn5a avatar zhengshuoo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tobetopjavaer's Issues

错别字

什么是面向对象-面向对象的五大基本原则-单一职责原则(Single-Resposibility Principle)
中的 Resposibility 应为 Responsibility

冬夏令时描述错误了

目前描述:

夏令时 北京和洛杉矶时差:12 北京和纽约时差:15

实际应该是

夏令时 北京和洛杉矶时差:15 北京和纽约时差:12

错别字

章节:编码方式_有了Unicode为啥还需要UTF-8
错别字:最后一句,比如纯英文网站就要比纯中文网站占用的存储****一些 (应该为“小”)

请教busuanzi不显示问题

博主,我在index.html中添加busuanzi的js文件,然后在封面的md文件中添加busuanzi的两个span,为啥不显示访问量?😢

Java堆和栈看这篇就够

JVMS中有提到如果堆是没有指定大小的话,StackOverflowError和OutOfMemoryError两种都会报的。

问题,Java值传递时会立即复制并分配空间吗

疑问主要在于Java只有值传递那一章,值传递发生后,user和hollis指向的是同一个值0x123456。

按照我的理解,如果是值传递,由于发生了复制,应该是堆中分配了一个新空间,里面也放着0x123456,然后user指向这个新的值

IO转换流OutputStreamWriter 的疑惑

文中提到:
字节流 -- 操作byte类型数据,主要操作类是OutputStream、InputStream的子类;
字符流 -- 操作字符类型数据,主要操作类是Reader、Writer的子类;

后来在“互相转换”标题中 对OutputStreamWriter有一段说明:
OutputStreamWriter:是Writer的子类,将输出的字符流变为字节流,即将一个字符流的输出对象变为字节流输出对象。

个人感觉:OutputStreamWriter 说明是不是正好说反了,其实是将字节流转换为字符流输出呢,不然下面的示例应该怎么理解呢 (个人理解:字节流-->字符流-->缓冲流)
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("d:\text.txt"),"UTF-8");

如何学好Java,平衡工作和日常学习?

作者,你好。

我自我介绍一下,我2017年夏季毕业,计算机科学与技术专业出身。在大学学的课程,几乎对编程没有任何用,都是皮毛。

现在,我在亚信科技浙江杭州分部工作,目前我时常需要独自一人负责一个模块。公司中运用的技术非常的广泛,Dubbo、Spring Boot、Spring Cloud、IBatis、Spring、RocketMQ、Mysql、Oracle等等。我目前能力有限,只会写个增删查改。

对  Dubbo、Spring Boot、Spring Cloud、IBatis、Spring、RocketMQ这些框架,只是懂一些最基本的皮毛,Mysql、Oracle这2个数据库也只是懂皮毛的知识。我深感自己对这些框架、数据库缺乏一个系统性的学习,我时常很苦恼。

在工作中,自我去年8月入职到现在,一直加班到现在,时常工作都是996。平时很少有时间能够自学编程。小组内又缺乏Java开发工程师,除了我还有另外一位工程师。但是那位工程师不愿意探讨技术,日常技术交流、沟通也少。

目前,我感到学习编程技术好困难。一是每天可以用来自己自学的时间很少,二是现实生活中有没有可以相互探讨交流的人。目前,我自己的计划是,按顺序将Spring框架 ---> Mybatis框架 ---> SpringMVC框架 ---> SpringBoot框架 ---> Spring Cloud框架 ---> MQ 这些框架逐个学习过去。

昨天,另一位Java工程师让我处理Dubbo框架IP白名单的问题。今天,我的组长又让我去学习HBase,解决数据库表查询问题。面对多变的工作,我的学习计划不得不去调整!

自2018年11月开始,我在W3CSchool上通过观看Spring在线文档,将Spring在线文档系统了学习了一遍。现在,我在看刘增辉老师编写《Mybatis从入门到精通》书籍,学习Mybatis。平时周六、周日不加班,我就在公司自学编程。

本篇短文写的有些散乱,还望作者能够给些指点性意见。我该如何学好Java,并平衡好工作、生活,感谢。

CPU指令重排表达漏字

happens-before、内存屏障、编译器指令重排和CPU指令重
这里作者手误漏了排字,本人正在学习参与开源项目,作者可以忽略我的小issue和PR

值传递和引用传递(混淆试听了)

一个是set的内部值
一个已经是改变对象本身,当然不是了。
如果在pass 中new User 当然 不是同一个对象
public void pass(String a){
a = "afds";
String a = new String("新的string");
}
是同一个意思。你重置了对象。

关于“深入理解 Java 内存模型(四)——volatile”相关问题

您好:
我正在读您写的您写的“深入理解 Java 内存模型(四)——volatile”,发现文章里面写道:“
• 原子性:对任意单个 volatile 变量的读 / 写具有原子性,但类似于 volatile++ 这种复合操作不具有原子性。
”,这个怎么理解? 很疑惑。 我看其他资料volatile修饰的变量只具有可见性,并不具有原子性。
期待您的回复。

关于自动拆箱装箱的例子错误

boolean flag = true;
Integer i = 0;
int j = 1;
int k = flag ? i : j;
关于自动拆箱装箱的例子错误,这个例子并不会发生空指针异常,请作者留意下。

文字描述有问题

语法糖中 可能遇到的坑一节中,泛型重载中,"上面这段代码,有两个重载的函数,因为他们的参数类型不同,一个是List另一个是List ,但是,这段代码是编译通不过的。"该文中,应该为"一个是String另一个是Integer"

错别字

ConcurrentHashMap In Java 7里面有个目的的目字写成了母

image

错别字

《Set如何保证元素不重复》,二叉树-->二差树

請問字串+串接編譯後的問題

因 "String对“+”的重载" 提到

String s = "a" + "b" 

都是常數會變成

String s = "ab"

但在 "字符串拼接" 章節提到

String wechat = "Hollis";
String introduce = "每日更新Java相关技术文章";
String hollis = wechat + "," + introduce;

在jad會變成

String hollis = (new StringBuilder()).append(wechat).append(",").append(introduce).toString();

好像跟前者有落差
而且改用Procyon跟Fernflower都會是

this.hollis = this.wechat + "," + this.introduce;

重载与重写

重写的条件第二条:返回类型必须完全与被重写方法的返回类型相同;
返回重写方法的子类型也可以的

关于依赖倒置有一点不解

@hollischuang 你好,你的文章对我的帮助很大;但是在阅读设计模式的五大原则时,我产生了一些问题;主要是关于依赖倒置,‘倒置’一词,我的理解是某种矢量的方向发生了变化,但是讲解中并没有提到这一点,比如 A和B是两个具体类,其中A依赖着B,也就是 A ---> B;在经过依赖倒置后变为
A ---> C ---> B,其中C是对B的抽象;然而总体而言,这样的依赖关系并没有发生变化,依然是从左到右,从上到下;‘倒置’一词,体现在什么地方?如果您看到的话,能否解答一下呢?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.