自学java难不难,对不同的人来说可能不一样,有着编程基础的来说,相对容易。如果是完全小白,就会稍微困难点,下面总结了十三步来自学java的步骤。

第1步:自学JAVA的开发环境配置、开发首个Java程序。也推荐大家刚开始使用eclipse等IDE,无需纠结是不是必须要从记事本刚开始。

第2步:自学数据类型、运算符、变量。这也是编程的基本,是程序的“砖块”。这类内容大部分编程语言都有,并且非常类似。

第3步:自学控制语句。这也是编程的基本,是程序的“混凝土”。有了控制语句+变量,理论上你也就可以写任意的程序了。因此,这也是进入程序的门坎,必须大量的练习。

第4步:自学面向对象基本。根据类、对象、包等基本概念解读。自学的情况下,必须要在这里介入内存分析,如此一来可以对于对象等知识有非常深入的了解。

第5步:持续面向对象,关键包括三大特征:集成、封装,以及接口、抽象类、内部类等定义。这类定义必须掌握,可是对于初学者来讲,先熟悉语法,根据后面的自学再深入。无需期待初学情况下就能深刻领会这类定义。

第6步:异常机制。Java程序的安全必须异常机制,这也是必学内容。当然,也非常简单。自学过程中,先无需揪着什么自定义异常不放,学好基本用法就可以。

第7步:数组和算法。自学数组时,重视融合循环管理数组。还要从底层内存了解数组,这不单单是学数组同样是复习面向对象;再融合一些算法,例如排序和搜索算法,既练习数组的用法,也学了算法知识,为面对企业笔试和面试做好充分的准备。

第8步:常用类和JDK源码阅读。自学常用类的用法:包装类、字符串相关类、实践类、Math类、File类等。自学过程中,只学如何使用这类API就及格了。要优秀,要培养出来高手逻辑思维,必须要融合JDK源码,一开始就培养出来阅读源码的习惯(虽然,可能大部分搞不懂)。

第9步:容器和数据结构。容器有:List、Set、Map。自学这三种容器用法只必须一两个小时。但,此时你要融合数据结构,再融合JDK源码解读。这便是“高手习惯”,让大家既自学容器,也学了数据结构,打好了内功,面对企业面试再好不过。

第10步:IO流技术。学好各种常用流就可以,掌握一些工具类的用法,例如:ApacheIOUtil如此一来会使你在以后使用时效率暴增。

第11步:多线程技术。这同样是笔试和面试中普遍的内容。我们要自学多线程基本使用、生命周期、状态转化。如果学有余力,自学一下下生产者消费者模式,给你一开始就具备架构的逻辑思维;既然学,就根据“高标准”要求自己。

第12步:网络编程。工作上直接用到的不多,并且socket编程范式差不多,了解即可。毕竟直接让你编写基于socket底层代码的情况比较少见。

第13步:做个项目吧。学了这么多,不做个东西怎么对得起自己?不管是小游戏项目也好,还是基于swing的项目,还是其他控制台项目。

自学java难不难 搞定这十三步就够了的更多相关文章

  1. java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊

    java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...

  2. Java三行代码搞定MD5加密

    Java三行代码搞定MD5加密 https://www.dexcoder.com/selfly/article/4026 public class MD5Test { public static vo ...

  3. 自学java难吗?一个JAVA学习者应该具备的素质

    无论是在校的学生也好,还是转行的也好,如今学JAVA开发的人越来越多,造成了如今新手越来越多,有人说前端饱和了,JAVA饱和了,JAVA才刚开始以一种好的势头发展就饱和了.我也是无语,一般说饱和的人, ...

  4. Java三行代码搞定MD5加密,测试5c短信网关的demo

    看到之前项目中,关于MD5加密的足足写了一个辅助类. 其实在Java中大部分都帮你实现好了,完成MD5加密,主要就三行代码: /** * 对字符串md5加密 * * @param str * @ret ...

  5. Elasticsearch JAVA api轻松搞定groupBy聚合

    本文给出如何使用Elasticsearch的Java API做类似SQL的group by聚合. 为了简单起见,只给出一级groupby即group by field1(而不涉及到多级,例如group ...

  6. Java并发:搞定线程池(中)

    向线程池提交任务 1.1 execute()     用于提交不需要返回值的任务,所以无法判断任务是否被线程池执行成功.输入的是一个Runnable实例. public void execute(Ru ...

  7. Java并发:搞定线程池(上)

    原文地址:https://www.nowcoder.com/discuss/152050?type=0&order=0&pos=6&page=0 本文是在原文的基础+理解,想要 ...

  8. 搞定thrift双向消息

    thrift作为脱胎于facebook的rpc框架,各方面都非常优秀.清晰的分层设计,多语言的支持,以及不输protocolbuffer的效率(compact下优于protocolbuffer),都让 ...

  9. 春节过后就是金三银四求职季,分享几个Java面试妙招,轻松搞定HR!

    春节过后就是金三银四,分享几个Java面试妙招,轻松搞定HR! 2020年了,先祝大家新年快乐! 今年IT职位依然相当热门,特别是Java开发岗位.软件开发人才在今年将有大量的就业机会.春节过后,金三 ...

随机推荐

  1. opencv:自定义滤波

    卷积核的定义 均值卷积核 // 自定义滤波 - 均值卷积 int k = 15; Mat mkernel = Mat::ones(k, k, CV_32F) / (float)(k * k); Mat ...

  2. 吴裕雄 python 神经网络——TensorFlow实现AlexNet模型处理手写数字识别MNIST数据集

    import tensorflow as tf # 输入数据 from tensorflow.examples.tutorials.mnist import input_data mnist = in ...

  3. fastjson数据返回配置

    阿里的fastjson 包升级后,可能导致返回的json 数据,字段为null时不显示等问题 <dependency> <groupId>com.alibaba</gro ...

  4. Python基础数据类型以及对应方法

    数据类型 不可变数据(四个):Number(数字).String(字符串).Tuple(元组).Sets(集合):可哈希 可变数据(两个):List(列表).Dictionary(字典).不可哈希 字 ...

  5. 基于SILVACO ATLAS的a-IGZO薄膜晶体管二维器件仿真(06)

    在知网看到了江南大学的硕士论文: 双有源层a-IGZO薄膜晶体管的特性仿真 IGZO/IZO双有源层薄膜晶体管特性的模拟研究 发现,我昨天的文章中参数的设置存在重大失误,如下材料定义语句中: mate ...

  6. echart 重新加载

    myechart2.clear(); myechart2.setOption(options[1]);

  7. 创建jsp文件时报错,"javax.servlet.http.HttpServlet" was not found on the Java)

    原因: 创建jsp文件的步骤如下: 出现"javax.servlet.http.HttpServlet" was not found on the Java) 报错信息就是因为没有 ...

  8. 算法复习 : 插入排序原理,记忆,时间复杂度 (7行java实现)

    最近啃了一遍吴伟民老师的<数据结构>,记录一些心得. 一种简洁的插入排序 : 1.重要概念 : 哨兵 1.在我们要排序的数组中,哨兵做为一个辅助的位置,一般是0下标的槽位做为哨兵 2.哨兵 ...

  9. JS-判断null值

    单独判断 null var str = null; if(str === null){ alert("is null"); } 同时判断 null 和 undefined 虽然nu ...

  10. bitnami-redmine 一键安装

    下载bitnami-redmine https://bitnami.com/stack/redmine 安装 选择语言 设置登陆用户名和密码,数据库用户名root,数据库密码也是这个设置的密码 其他下 ...