您好!欢迎来到爱源码

爱源码

热门搜索: 抖音快手短视频下载   

零小白如何自学Java?按照这个学习路线就行了。 [源码交易]

  • 时间:2022-09-04 01:08 编辑: 来源: 阅读:306
  • 扫一扫,手机访问
摘要:零小白如何自学Java?按照这个学习路线就行了。 [源码交易]
如果真有这么残酷的一天,我不小心喝错了一瓶药,一下子抹去了我十几年的编程经验,把我变成了小白。 想自学Java,想找工作。我估计需要六个月,前提是每天都处于高效学习状态,每天学习时间至少12小时。 即便如此,我确定我找到的工作也不会太好,勉强能维持生计。毕竟是零基础入门。 如果你想更进一步,成为一名不可或缺的高级Java工程师,那就需要更长的时间,两年,三年,五年,直到你秃顶。 想来想去,觉得有必要为那一天做些准备,以备不时之需。 01.第一阶段,环境和工具要准备一台电脑,要能在网上下载安装JDK,下载Java开发环境,下载Maven,安装IntelliJ IDEA。准备一个GitHub仓库(或者代码云),管理Java源代码。Java是一种计算机编程语言。学了就连电脑都不会,什么都不学。 我有个亲戚的孩子,想学编程,就只看书。他甚至不配拥有一台电脑。他说,“先打好理论基础,再实践。”我真的有点醉了。 有了电脑,就要联网,自学的过程中会遇到很多问题。遇到问题先问搜索引擎,推荐Google和Bing如果实在没有答案,也可以来找我,申请加入技术交流群,问问群里的大佬。 既然要学习Java,就必须先安装JDK,否则Java程序无法编译执行。 Maven也需要提前安装配置。因为后期的高级项目需要少量的动手项目,所以通常需要Maven加载第三方类库。 用IntelliJ IDEA这种集成开发环境敲Java代码,比Eclipse流行。 千万不要用记事本写源代码。对小白来说,时间是宝贵的。记事本只适合大牛装X,不适合小白编程(入门)。纯白需要时间。 边肖是一名拥有多年开发经验的程序员。 想学好Java,在学习的过程中,身边没有人可以指导你学习。可以上这个Java学习裙,里面有最新的学习路线和教程,无论是计算机专业的学生想往Java开发方向发展,还是零基础的职业,都可以跟着教程走。不懂的可以到里面问。这是Java学习裙。 前面的三个输入494、中间的三个输入801和后面的三个输入931。 有了IDEA,以后学习源代码,包括反编译字节码,会方便很多。 如果你英语不好,建议安装这两个IDEA插件:中文和翻译。 如果你关注编码标准,建议安装这两个IDEA插件:阿里巴巴和SonarLint。 为什么需要GitHub仓库或者代码云仓库?它们可以用来同步在线云中的源代码,以防止版本丢失。 最后可以形成自己的刀具库,轮子就有了。上班的时候工作效率会高很多,可以直接用的代码永远不用重写。 02.第二阶段,Java入门1)基本数据类型八种基本数据类型(boolean、char、byte、short、int、long、float、double) byte、short、int、Long的单精度和双精度的范围为什么不能用“= =”来比较浮点数的基本类型和装箱类型的区别?自动拆箱和装箱整数的缓存机制?2)运算符算术运算符逻辑运算符比较运算符?3)流控制语句条件分支(if/else/else if,三元运算符,switch)循环或遍历(for,while,Do-while)中断和继续4)包创建包导入包全名5)main方法详细解释public关键字static关键字void关键字main方法string数组参数(String[] args)6) array什么是数组?访问数组遍历数组打印数组变量参数数组排序数组入流数组入列表数组搜索java.util.Arrays数组越界7)注释单行注释多行注释文档注释真的不会执行注释吗?好的程序员不写评论是真的吗?8)为什么string双引号字符串和new string对象字符串是不可变的?String、StringBuilder和StringBuffer的区别字符串拼接的几种方式字符串常量池关于intern字符串的比较(= = and equals)字符串拆分操作技巧字符串变换和整形生成UUID字符串。可以参考并通过吗?字符串的长度大概是substring03,第三阶段,Java核心技术1)面向对象面向对象和面向过程的封装继承多态接口通用类重写和重载构造方法局部变量,成员变量,静态变量, 常量值传递或引用传递final关键字这个关键字super关键字不可变objects equals()和hashCode()Print Java object NullPointeException 2)常用工具类字符串相关工具类日期时间相关工具类枚举随机数正则表达式Apache-commons工具库Guava工具库3)集合框架ArrayListLinkedListArrayList和LinkedList它们之间的区别是不可变L istcopyonwritearlythashplinkedhashmaptremapconcurrenthashmapfail-fast 4)反射机制什么是反射? 反思有什么用?Class 5)为什么需要异常解析机制来进行异常解析?和错误try-catch-finally try-with-resource。自己设置例外。尝试捕捉最初的异常。在抛出异常之前不要打印堆栈。不要用异常解决机制代替判断。不要过早捕捉异常。6)评论有哪些评论?注释的生命周期,注释修饰的目标,自己设置注释,使用注释7)IO流字符流,字节流输入流,输出流同步,异步阻塞,非阻塞BIO,NIO和AIONIO 2.08)序列化什么是Java的序列化和反序列化如何实现Serializbale和ExternalizableSerialiversionUID的序列化和反序列化9)泛型什么是泛型?抹去泛型带来的问题。泛型中这些特殊字母K T V E的含义。通配符上限和下限分隔符扩展和超级。不要在集合中使用Java基本类型。10)单元测试JunitTestNG11)编码方法asciunicodeutf-8 gbk,GB2312乱码问题如何处理12)并发编程什么是并发?什么是并行?什么是线程?进程线程的状态是什么?线程优先级?线程池?什么是线程安全?多级缓存和一致性?CPU时间片和原子性?指令重排和排序?线程安全和内存模型发生在重入锁阻塞锁之前?乐观锁悲观锁分布式锁卡萨巴倾向于轻锁。重量级锁,重量级锁,旋转锁,什么是死锁?如果避免死锁的话synchronized volatile hread、local executor、scountdownlatch、threadrunnable callablereentrantlockerentreadwritelocatomic相关类13)Java 8新增Lambda表达式流stream Optional14)源代码读取Stringintegerarylistlinkedlistcopyonwritearraylist hashmaptremaplinkedashmapconcurrenthashmapcopyonwritearraylis 04、高级Java更新1)JVMJava内存结构堆栈垃圾收集JVM参数调优Java对象模型热点类加载机制编译和反编译反编译 Javap)2)使用单例线程池减少上下文切换和锁粒度数据压缩流并行流GC调优JVM内存分配调优btrace)性能优化3)设计模式的六大原则创造性设计模式(单例、通用工厂、构建器、工厂、原型)结构化设计模式(适配器、桥、装饰、组合、外观、共享、代理)行为设计模式的七种编写方式(模板方法、命令、迭代器、观察者、中介、备忘录、解释器、状态、策略、责任链、访问者)。 4)简单的数据结构和算法。数据结构(堆栈、队列、链表、数组、哈希表)。树(二叉树、字典树、平衡树、排序树等。)无向图)稳定排序算法(冒泡排序、插入排序、鸡尾酒排序、桶排序、计数排序排序、归并排序、原地归并排序、二叉排序树排序、鸽巢排序、基数排序、侏儒排序、库排序、块排序)不稳定排序算法(选择排序、山丘排序、梳状排序、堆排序、平滑排序、快速排序、自省排序等。)三叶草排序)时间复杂度和空间复杂度的贪婪算法KMP算法5)操作系统Linux的常用命令(find、top、tar、move、grep、tail、netstat、curl、wget、ping、ssh)服务器性能指标(qps、CPU利用率)进程同步分段和分页虚拟内存和主存6)网络安全CSRFXSSSQL注入式加密和解密(对称加密、非对称加密)MD5、SHA1、DES、RSADDOS攻击HTTP和HTTPSSSLTLSTCP和UDPCookie、 SessionCDNDNS7)数据库MySql索引存储过程子数据库子表binlog读写分离数据库缓存(Redis、MongoDB)数据库中间件(MyCat)数据库连接池(Durid)8)大数据搜索[https://mp.weixin.qq.com/s/ zjszxle 7m _ dfmvwvkq 2 ayg]、Solr)流计算(Storm、Spark、Flink)Hadoop9)服务器TomcatjettyNginx10)框架springmybeatsstring MVC Spring Boot Spring Security Spring CloudNettyDubbo 11)消息队列RabbitMQKafka12)容器 最重要的是要活着,不能秃顶。 零入门的时候看书或者看视频,我觉得成年人,为什么一定要做选择题?两者都要做。 喜欢就看书,喜欢就看视频。 最重要的是,在自学的过程中,一定不能自大,要实践,把学到的技能投入到项目中,处理问题,然后进一步磨练自己的技能。 对于开源项目,我推荐GitHub上的mall和vhr。前者是电商系统,后者是微人事。都是用最前沿的技术,文档也很全面,不怕搞混。 自习最怕的就是没有上进心,所以一定要自律,杜绝“三天打鱼两天晒网”。到头来,我们会白忙一场。 高度自律的同时,要有耐心,不要放弃,不要自怨自艾,每天给自己一点鼓励,你就会有足够的精力去学习,不容易困。 学完技能,找工作的时候一定要准备好简历。不要像无头苍蝇一样下海投简历。竹篮打水一场空。 可以参考下面的链接,好好准备简历。毕竟是找工作的敲门砖。 阿里入职后才知道,原来简历上是这么写的。拿到面试邀请后,他在面试过程中一定要大方,尽量把学到的东西舒服地表达出来。不要因为他是自学成才就自信。如果给面试官留下好印象,面试成功的几率会大很多。加油,骚年!


  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【域名/主机/服务器|】qq邮箱提醒在哪里打开(2024-06-04 18:58)
【技术支持|常见问题】1556原创ng8文章搜索页面不齐(2024-05-01 14:43)
【技术支持|常见问题】1502企业站群-多域名跳转-多模板切换(2024-04-09 12:19)
【技术支持|常见问题】1126完美滑屏版视频只能显示10个(2024-03-29 13:37)
【技术支持|常见问题】响应式自适应代码(2024-03-24 14:23)
【技术支持|常见问题】1126完美滑屏版百度未授权使用地图api怎么办(2024-03-15 07:21)
【技术支持|常见问题】如何集成阿里通信短信接口(2024-02-19 21:48)
【技术支持|常见问题】算命网微信支付宝产品名称年份在哪修改?风水姻缘合婚配对_公司起名占卜八字算命算财运查吉凶源码(2024-01-07 12:27)
【域名/主机/服务器|】帝国CMS安装(2023-08-20 11:31)
【技术支持|常见问题】通过HTTPs测试Mozilla DNS {免费源码}(2022-11-04 10:37)

联系我们
Q Q:375457086
Q Q:526665408
电话:0755-84666665
微信:15999668636
联系客服
企业客服1 企业客服2 联系客服
86-755-84666665
手机版
手机版
扫一扫进手机版
返回顶部