java全套教程详细讲解 自学java怎么入门?

9158APP 0

自学java如何入门?

当然,学习一门编程语言,更不用说有编程经验的人了,需要掌握该语言的很多要素。例如,几乎每种语言都有变量、函数和整数集(例如数组、字典、类和结构)。等)、流程控制(if-else、break、 continue 等)、停止循环结构(for、while 等),最后是语言的新语法。这可以指导您快速入门。

我对上面的内容没有太多的了解。其实我不需要太纠结这些概念的文本定义。只是一本书或者电子文档或者视频,应该伴随学习每天练习C语言程序,接触自己。你可以解决写作中的错误,加深对这些的理解和感受。

书籍有很多,例如:

网上也有很多学习网站,比如廖雪峰的官方网站:

廖雪峰的网站有两个优点,一是每章都有一些日常小练习,可以直接在页面上尝试C语言设计,二是每章末尾有评论区,也可以和博主一起学习。留言交流。

如果博主在学习的过程中仍然遇到上述问题并且无法自行解决,也可以搜索一些Java学习群。群里也会有很多学习资料。另外,你也可以一直把自己的问题抛给别人。群友交流。

希望它仍然可以帮助你

如何系统学习JAVA?

Java的整体生态和学习积累确实太大了。从1995年至今20多年的积累几乎涉及计算机软硬件的方方面面。我大概可以认为,提倡者所说的专业化是指jdk本身以及一些必要的数据结构和具体方法框架以及面向对象的基本思想。

从2011年初到现在,我一直在学习Java相关知识。也走了很多弯路。根据我自己的积累,我会给你一条免费、合理、深入的学习路线。大致可以分为以下几个阶段。

1、简单性要尽可能的简单,为基本的数据结构和简单的算法打下坚实的基础。

这样可以让你快速学会一些简单的拜头系统,满足你对软件学习的兴趣和最初的成就感。不过,你必须转头仔细看,巩固数据结构和简单算法的基础知识。与这类书不同也没关系。

2.非常熟练使用Java类库和Java第三方工具框架。

如何学习如何使用Java语法,接触并理解使用Java语法进行计算机设计的逻辑。对jdk第三方库本身比较熟练,以及各种第三方类库工具包和第三方框架的简单使用。在此自学的同时,请推荐我阅读《设计模式》、《如何清理代码》、《Spring源码解读》、《Spring揭秘》等书籍。

3、了解和学习jdk第三方库本身的应用源码以及高端第三方框架的源码和架构设计。

比如JDK自带的数据结构二叉树、红黑树、treemap,包括同步异步包的unsafe、同步阻塞队列、call-future等包源码,以及线程基础类、各种类的实现库,以及设计结构和设计模型。了解第三方框架的设计思想,了解如何学习第三方框架的核心源码。

不过这可能会涉及到其他的事务、分布式协议等,这里我们就不继续展开了。这个过程不是一朝一夕就能完成的,当然也不需要大量的时间和技术理解。其实也可以理解,《设计模式》、《如何清理代码》、《Spring源码解读与设计详解》、《Spring揭秘》等类别的书籍在这个过程中存在较大差异。

4. 讲解jdk、jre、jvm的原理和使用。

这里推荐阅读王振彪的《实用Java虚拟机》。里面的解释非常实用。很容易解释。

是的,你可以先学习一些jdk光盘驱动工具。

如:jstat、jmap、jstack、jps、jdb.甚至还有HSDB可以在运行过程中窥视实际的内存数据。当然,作为学习的初步,我们只需要了解几个命令的具体用法,了解贞操环的含义即可。而且,第三方监控工具和jdk本身也需要提供三种可视化监控。

主要是了解jvm的运行原理,了解class文件结构。

在这个过程中,我们可以利用之前带来的监控工具来了解jvm开启程序的基本原理。你不需要参考各个版本的jvm官方标准来学习理解class文件。还可以使用classpy等工具来方便我们编写class文件。您还可以停止尝试在类字节码级别接受循环展开调试工具。即使你不尝试使用jvm汇编编码工具。

接下来讲解JVM垃圾收集机制的发展历史以及各种主流垃圾收集器的工作原理。

这个过程其实也太奇怪了。垃圾收集器有各种串行、右行、新声生成/交换和老年代。这些回收的警戒线,大的触发条件,各种基础参数和不那么感人的超参数,这些G1 H区,ZGC等等。幸运的是,GC 并不是合法的jvm 官方规范的一部分。

然后,尝试做一些JVM练习和实战,

例如常见的JVM故障排查及故障系统总结、性能调优、程序热运行、类字节码、asm的动态操作等。

最后,这可以在你自己的jvm中实现多次。 (其实这一步对于很多同学来说是没有必要的)

这里推荐几本书,帮助我彻底理解jvm规范的学习路径。最好的办法是自己实现程序垃圾收集器。

周老师的《深入理解Java虚拟机》。

接下来是《深入嵌入式Java虚拟机》及配套源码。这个cldc的jvm源码只有1M多。目前,Oracle官网仍然可以下载。它是一个jvm应用程序,设计得过于精简和集成。

这次,你可以阅读《编写你自己的Java虚拟机》。本书的JVM基于常规的Go语言编译器。当然,很多设计并不是很合理。但他们几乎都遵循jvm规范。

这时候你可以去看看github上各种jvm开源代码的利用。有go、scalajvm、javainjava、ajvm、python-jvm、lua,每个版本都有完全不同的jvm实现程序。

当然,这些实现方法只不过是基本原理。

稍后推荐大家看看《实用热点》豹书,打听一下高级语言虚拟机的圈子。

当然,关于垃圾收集的书籍很少。这里我要向大家推荐一本关于垃圾回收的超级经典书籍《The Garbage Collection Cookbook》。如果你对新的垃圾回收算法感兴趣,也可以去知乎搜索GC算法闭源利用的相关论文和demo。

5.当然,我的建议只是针对Java本身。

真正需要提高的是已经想学习Java生态、软件工程、计算机网络、大数据基础知识、mahuot、sparklib、分布式搜索架构、各种消息中间件、缓存中间件、数据库、DNS/CDN。这些都是互联网应用,没有什么可躲的。

仅有建议:精通常识、专攻研究方向、了解相关生态。

这个问题的产生是因为Java本身。我不会推出任何其他具体和详细的指示。具体描述的是大体的技术方向,但没有其他受访者这样做过,将详细讨论语法糖的水平。希望对楼主有很大的帮助。

如果您有任何疑问,请关注我并与我讨论。谢谢。