如何快速学习Java

2021-02-05 10:07发布

25条回答
Sophia
2楼 · 2021-02-05 10:42

零基础小白学习的话,还是建议参加正规的课程学习,这样的话能高效率,快速的学习到技术

任@先生
3楼 · 2021-02-05 11:17

首先按照阶段性的进行学习,这样可以不会混淆,同时一定要有自制力,不然学起来三天打鱼两天晒网肯定不行

樱田妮妮NiNi
4楼 · 2021-02-05 13:46

1. 学习语言基础

很显然,掌握语言基础是第一步。如果你不了解基础知识,那么你就不知道自己是否做错了或者接下来该怎么做。当然,这并不是要求你把所有的基础知识都记住,比如所有的 Java关键字、核心概念或者基本编码技术等。

2. 开始编写一些小程序

如果你确信自己对大多数的基础知识和概念足够熟悉,并且能够以某种方式将它们联系起来,那么你就可以进行下一步了,你可以开始尝试编写一些非常基本的 Java 程序,比如打印 hello world、实现简单的加减法,等等。

3. 使用 Java API 编写高级程序

当你完成了大部分的基础程序编写,并且掌握了基本的编程技巧之后,就可以进行下一步了。我会建议你努力学习 Java 集合和 Java IO 内部的 API。你需要熟悉这些 API 提供的各种类和接口,并利用它们来创建程序。需要注意的是,你应该查找已经存在的 API 和方法来实现功能,而不是自己实现这些逻辑。你的任务是熟悉这些 API,因此你只能够在这些已有的 API 中寻求解决方案。


世界那么大我想去看看
5楼 · 2021-02-05 13:59

想要快速学习Java的话,可以考虑找个靠谱的培训机构报个系统班,最好是赵A股上市公司,平台大,有实力,全程春面授的;这样的话就算零基础也没有关系,老师手把手带着学,而且面授的话可以做到基本没听懂当堂问,不堆积问题,还是比较有效率和省时的方式的

只爱泡泡的哆啦A梦呀
6楼 · 2021-02-05 15:31
  1. 一、掌握语言基础是第一步。比如所有的 Java关键字、核心概念或者基本编码技术等

    二、开始编写一些小程序
    如果说自己对大多数的基础知识和概念足够熟悉,并且能够以某种方式将它们联系起来,那么你可以开始尝试编写一些非常基本的 Java 程序,比如打印 hello world、实现简单的加减法等等。多编写几个程序,首先尝试自己独立编码,遇到问题再通过谷歌寻求帮助。

  2. 三、使用 Java API 编写高级程序

  3. 当你完成了大部分的基础程序编写,并且掌握了基本的编程技巧之后,就可以进行下一步了。我会建议你努力学习 Java 集合和 Java IO 内部的 API。你需要熟悉这些 API 提供的各种类和接口,并利用它们来创建程序。需要注意的是,你应该查找已经存在的 API 和方法来实现功能,而不是自己实现这些逻辑。你的任务是熟悉这些 API,因此你只能够在这些已有的 API 中寻求解决方案。

  4. 四、编写桌面程序和 Web 应用
    通过这一步的学习,面对任何Java 面试你都能够信心满满,当你讨论 Java 相关的话题时也能够充满自信。你需要至少编写一个 Java 桌面或者 GUI 应用程序,比如计算器,然后再编写一个 Web 应用程序,比如医院管理程序。
    你可以向 Java 专家、有经验的朋友、同事或者其他比你强的人寻求帮助。在搜索解决方案和学习基本概念时,阅读优秀资料。此外,还可以购买一些相关的书籍。

  5. 五、阅读和参与优秀的 Java 博客与论坛
    完成上述四个步骤之后,我相信你在 Java 方面已经获得足够的自信,你可以去帮助其他的初学者。遇到初学者时,尽量帮他们解决问题,即使这会花费你一定的时间。比如 Stack Overflow 这样的论坛,你可以从别人的错误中学习,开拓思想,并提升自己的思维能力。

茄子酱
7楼 · 2021-02-05 15:40

1. 学习语言基础

很显然,掌握语言基础是第一步。如果你不了解基础知识,那么你就不知道自己是否做错了或者接下来该怎么做。当然,这并不是要求你把所有的基础知识都记住,比如所有的 Java关键字、核心概念或者基本编码技术等。

2. 开始编写一些小程序

如果你确信自己对大多数的基础知识和概念足够熟悉,并且能够以某种方式将它们联系起来,那么你就可以进行下一步了,你可以开始尝试编写一些非常基本的 Java 程序,比如打印 hello world、实现简单的加减法,等等。

当你开始动手编写程序时,请记住,前几个程序对你来说可能会困难重重。但是一旦挺过去,接下来即使这些问题再次出现,你也能轻松解决。

你可能会遇到很多困难,起初你可能都无法独自完成 hello world 程序并使其正确运行。这时,你应当毫不犹豫打开谷歌然后搜索类似的程序。不要简单复杂这些代码,首先应该读懂代码,然后自己动手手动输入到你的 IDE 中,并解决由于输入的错误语法而导致的编译错误。如果仍然不成功,就再次借助谷歌寻求帮助。谷歌搜索是程序员的良师益友,你应该好好利用它。

多编写几个程序,首先尝试自己独立编码,遇到问题再通过谷歌寻求帮助。我列举了一些基本的 Java 程序,很适合初学者。

显示文本信息。显示1到50的数字列表,每个数字独立一行。找出两个数字中的最大值和最小值。使用多种方法交换两个数字。编写一个计算器程序,使之能够进行数字的加减乘除运算。创建两个类,练习重载和重写。在程序中使用数组。以上程序只是带你入门,让你能够编写一些基本的 Java 程序。这个列表可以更长,你可以添加更多的项目到这个列表中,为其他初学者创建更多的入门程序。记住,善用谷歌,它会让你学习编程的过程如虎添翼。

3. 使用 Java API 编写高级程序

当你完成了大部分的基础程序编写,并且掌握了基本的编程技巧之后,就可以进行下一步了。我会建议你努力学习 Java 集合和 Java IO 内部的 API。你需要熟悉这些 API 提供的各种类和接口,并利用它们来创建程序。需要注意的是,你应该查找已经存在的 API 和方法来实现功能,而不是自己实现这些逻辑。你的任务是熟悉这些 API,因此你只能够在这些已有的 API 中寻求解决方案。

同样,我列出了几个基本的程序供你参考。之后,你可以编写更多的程序,尽可能多地使用 JAVA 提供的 API 和类。

从控制台接收输入并打印。

从文件系统中读取文件并在控制台中打印文件内容。

创建一个新文件并在文件中写入数据。

从 URL 中读取数据并对其内容进行一些搜索将元素存储在列表中,然后遍历它。

使用 HashMap 存储随机的键值对,然后用多种方式遍历它。

对集合元素进行搜索和排序。

在这一阶段你编写的程序越多,就会获得更多的信心。熟练使用这些 API 之后,请进入下一节接受更加艰难的挑战吧。

4. 编写桌面程序和 Web 应用

通过这一步的学习,面对任何Java 面试你都能够信心满满,当你讨论 Java 相关的话题时也能够充满自信。你需要至少编写一个 Java 桌面或者 GUI 应用程序,比如计算器,然后再编写一个 Web 应用程序,比如医院管理程序。在前面的学习中,你已经掌握了最基本的 Java 知识,现在你需要去探索,然后编写出这两个应用程序。

你可以向 Java 专家、有经验的朋友、同事或者其他比你强的人寻求帮助。在搜索解决方案和学习基本概念时,阅读优秀资料。此外,还可以购买一些相关的书籍。总之,用一切方法把这两个应用程序做好。集中精力,哪怕几周甚至几个月的时间,也要把这两个程序做好。

我可以向你保证,当你最终完成这两个练习时,谈到 Java 你会获得空前的自信。更重要的是,它可以帮助你养成不惜一切代价完成一项任务的好习惯。这种持之以恒的态度对你职业生涯的长远发展是非常重要的。

5. 阅读和参与优秀的 Java 博客与论坛

完成上述四个步骤之后,我相信你在 Java 方面已经获得足够的自信,你可以去帮助其他的初学者。遇到初学者时,尽量帮他们解决问题,即使这会花费你一定的时间。比如 Stack Overflow 这样的论坛,程序员们经常在这里学习、分享或者进行职业规划。你可以从别人的错误中学习,开拓思想,并提升自己的思维能力。


老易
8楼 · 2021-02-05 16:28

Java - 近10年来计算机软件发展过程中的传奇,其在众多开发者心中的地位就如“屠龙刀”、“倚天剑”。


Java是个平台,我只想说说我对学好Java的一点看法,希望对初学者有所帮助。


1. 思考一下


学习Java之前,先别急,静下心来好好想想:


1)你对学习Java是否有兴趣?


2)你是否能静下心来坚持不懈地学习?


嗯,这是个容易但又绝对不应该忽略的问题,你确信自己对Java感兴趣、而且又有吃苦的准备,那你才可能学好Java!如果具备这两点条件,就请继续往下看……


2. 准备一下


请不要把你的学习Java之路和其它计算机技术分开看待,技术的联系往往是千丝万缕的,你应该掌握一些学习Java所涉及的基础知识,对于 “CLASSPATH要怎么设置啊”、“跪求JDK下载地址”等等问题,你不该问,因为Internet上太多答案了,甚至换个角度说,你是不是还不适合直接学习编程?


1)买本Java学习用书。


JDK 6正式版刚刚推出,市面上你暂时买不到JDK 6的书籍,但我仍推荐你买一本适合入门的、较新JDK版本的Java书籍,那么,你现在选择一本讲述JDK 5的入门书籍还是有条件的。我可以推荐一些入门书,但是我不打算这么做,因为合我口味的,不一定适合你。但无论如何,《Thing In Java》绝对不应该作为你入门Java的第一本书籍!


记住,网络上学习Java的资源很多,但基本不够系统,拥有一本Java入门书籍,是你系统学习Java的基础。


2)准备Java学习环境。


准备你的学习环境,很简单,安装JDK 6,然后用类似UltraEdit、EditPlus的文本编辑器配置你的学习环境,Internet上有很多关于如何配置的文章。初学Java,不建议用IDE工具,通过一行行的敲代码,你会碰到很多问题,只有这样,你才能学会怎样解决问题,并加深自己对Java的理解。


准备好后,开始进入激动人心的Java学习里程吧!


3. Java基础学习之路


学习Java的过程虽然辛苦些,但又是处处有精彩!学习过程中的心态一定要保持专一,网上关于语言间的“PK”到处都是,别被浮躁影响!认准了Java,你就坚持!克服心魔,恒心最终会给你回报的。


Java的体系分为Java SE、Java EE和Java ME(JDK 5.0以前分别叫J2SE、J2EE和J2ME),Java的敲门砖就是Java SE了,也就是你要入门学习的内容,不论你日后是选择哪个体系领域作为发展方向,你都得从Java SE起步。


学习Java SE,打好Java基础;如果想学Java EE(对不起,我不了解Java ME,所以我无法涉及Java ME的相关内容),对于AWT、Swing是否要学习呢,我个人是觉得还是要知道其所以然的,特别是其事件处理模式,我强烈建议初学者一定要弄清楚,其他具体的开发就不一定要全面掌握了,毕竟AWT、Swing方面的内容足够用几本大部头的书才能描述详尽;当然,如果你的工作就是做 AWT、Swing开发,那就另当别论了。


I/O、Thread都是基础之一。


4. Java EE学习之路


学习了Java SE,还只是完成“万里长征”的第一步。


接下来选择学习Java EE或是Java ME(或者你还想不断深入学习Java SE,只要你喜欢,你可以一直深入下去,就像前面所说的,我不会讲到Java ME的学习);估计选择Java EE方面的学习者会多一些,Java EE所涉及技术非常多,考虑到初学者的接受程度,我会尽量从最常用的角度来介绍。


学习Java EE,在开发环境上不建议再用文本编辑器,我感觉NetBeans 5.5(目前最高正式版本)很适合初学者,我个人也很喜欢NetBeans,如果你喜欢用别的IDE如Eclipse,都没问题,看自己喜欢吧。


4.1 学习JSP/Servlet


Java EE最高版本目前是5.0版本。


在Java EE中,首先要学习JSP/Servlet(结合Tomcat、MySQL)技术,建议JSP1.2/2.X的知识都要掌握,毕竟现在很多的在用系统都还是基于JSP1.2,学习JSP,还必须掌握一些外延技术,如:你还得掌握HTML基础知识,最好再掌握些JavaScript(目前正火的AJAX技术之一)、CSS的技术,而了解XML是必不可少的(至少描述性配置信息是通过XML来描述的)。在学习JSP/Servlet过程中,应该结合学习 JDBC、数据库开发技术,毕竟绝大多数Java Web项目都是和数据库紧密结合的。


4.2 学习数据库开发技术


这里我想重点说一下数据库开发技术,数据库技术是做业务系统必备技能,Java Web开发人员最低程度都应该掌握SQL语句的使用!数据库技术大体可分为DBA技术和数据库开发技术,对于开发而言,应侧重数据库开发技术,而数据库基本操作,也是要掌握的。常用数据库有DB2、Oracle、SQL Server、MySQL等,你可以结合实际需要,选择一种数据库,并花大力气掌握其开发技术。


记住,学习数据库开发技术和学习Java EE,是相对独立的,你可以在学习JSP/Servlet的同时,学习数据库开发技术(如SQL语句等),或者先学数据库开发技术,之后再学习JSP/Servlet。


4.3 学习Java EE其它开发技术


再往后,可以学习一些EJB的知识,目前EJB最新版本是3.0,其和前面的2.X版本相比,有较大不同,考虑到目前EJB 2.X还有很大的应用市场,建议结合学习EJB 2.X/3.0。在学习EJB过程中,应同时掌握一种企业级应用服务器的使用(如 WebSphere、Weblogic、Sun Applcation Server或JBOSS等,目前Sun Applcation Server 9.X和JBOSS都可支持EJB 3.0)。


之后的学习中,再逐渐扩展到其他Java EE技术。


5. 之后


等你对Java EE有些感悟的时候,你自然就会想不断扩展你的知识面,这时候你可以学习Spring、Hibernate,以及各种Web框架(如Struts、JSF、Webwork或是Tapestry等)。


随着技术、经验的不断积累,你会逐步关注分析、设计等更高层次的知识,这时候,你可进一步学习相关的UML、模式等知识(积累了一定经验,你就可以安排自己学习这些知识了)。


6. 小结


永远记住:自始至终,实践是学习Java技术历程中极其重要的一环。脱离了实践,是学不好技术的!


Java学习、实践之路依然没有银弹,况且一步步走来,要学的东西很多,勤奋是金!


善于利用Internet上众多的资源,多吸取些别人的经验。


目前关于Java的争论很多,如“Java正走下坡路”、“Ruby必将取代Java”等论点甚嚣尘上,但正如我前面所言,这是一种浮躁的表现,Java的前景非常好,特别是Java开源以后!就让他们去吵去吧,掌握了Java,你就掌握了当前最火的技术。


“梅花香自苦寒来”,当你掌握了扎实的Java开发基础,你就能把手中的这把“屠龙刀”、“倚天剑”舞得风声水起!那时,你一定会有一种成就感。


小小收藏家
9楼 · 2021-02-05 16:45

找个正规的培训机构好好学习吧

相关问题推荐

  • 回答 156

    对于每一位才开始接触JAVA的新手来说,先不要管算法和数据结构,大多数简单的程序不需要用到算法和数据结构,所以当你真正需要时再去学习。编程一段时间以后,你就会知道在哪些地方用到他们。这时知道算法的名字并了解它们的功能,然后动手去实践。当我们在去...

  • 回答 93

    2个都很好就业,更关键的是要学得到东西

  • 回答 12
    已采纳

    获取Map集合中所有的key可以通过map集合的keySet()方法获取例如:    Map map = new HashMap();    map.put(xx,xx); //存放数据    //.... 省略    Set set = map.keySet();    //可以通过迭代器进行测试    Iterator iter = set.iter...

  • 回答 56
    已采纳

    不同年龄,不同掌握程度,学历,找工作城市,面试能力这是一个多方面影响的结果,如果是平均值的话,全国平均薪资14k左右

  • 回答 38

    具体学多久,根据自己的学习力,自律性、解决问题能力来决定若系统性学习,跟着讲师的节奏走,大概半年左右,有专业的讲师把课程进行规划,尽心系统学习,有问题,讲师会帮忙解决,学习的效率很高,避免了自学中出现各种问题解决不了,而耽误很多时间,可能会...

  • BIO与NIO、AIO的区别2020-05-19 15:59
    回答 4
    已采纳

    IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。一、BIO     在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要...

  • 回答 23
    已采纳

    (1)idea启动时会有两个快捷方式,安装完后默认生成在桌面的是32位的idea的快捷方式,如果我们使用这个快捷方式运行大项目,一般都会很卡。解决方法是找到idea的安装目录,然后进入bin文件夹,找到名称为idea64的应用程序,右键他生成桌面快捷方式。以后每次...

  • Java方法的命名规则2021-04-06 19:07
    回答 31

    ava是一种区分字母的大小写的语言,所以我们在定义变量名的时候应该注意区分大小写的使用和一些规范,接下来我们简单的来讲讲Java语言中包、类、变量等的命名规范。(一)Package(包)的命名Package的名字应该都是由一个小写单词组成,例如com、xuetang9、compan...

  • 回答 2

    public class Point {    private int x;    private int y;    public int getX() {        return x;    }    public void setX(int x) {        this.x = x;    }    public int getY() {        return y;    } ...

  • 回答 6

    经典版单例模式public class Singleton {        private static Singleton uniqueInstance;//利用一个静态常量来记录singleton类的唯一实例。     private Singleton() {     }     public static  Singleton getInstance()...

  • 回答 3

    哈希表的长度一般是定长的,在存储数据之前我们应该知道我们存储的数据规模是多大,应该尽可能地避免频繁地让哈希表扩容。但是如果设计的太大,那么就会浪费空间,因为我们跟不用不到那么大的空间来存储我们当前的数据规模;如果设计的太小,那么就会很容易发...

  • 回答 14

    1. DOM(Document Object Model)        DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才...

  • 回答 19

    1)作用不同: throw用于程序员自行产生并抛出异常; throws用于声明在该方法内抛出了异常2) 使用的位置不同: throw位于方法体内部,可以作为单独语句使用; throws必须跟在方法参数列表的后面,不能单独使用。3)内容不同: throw抛出一个异常对象,且只能是...

  • 回答 11

    基本执行过程如下:1)程序首先执行可能发生异常的try语句块。2)如果try语句没有出现异常则执行完后跳至finally语句块执行;3)如果try语句出现异常,则中断执行并根据发生的异常类型跳至相应的catch语句块执行处理。4)catch语句块可以有多个,分别捕获不同类型...

  • 回答 20

    100-199 用于指定客户端应相应的某些动作。 200-299 用于表示请求成功。 300-399 用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。 400-499 用于指出客户端的错误。 400 语义有误,当前请求无法被服务器理解。 401 当前请求需要用户验证...

  • 回答 16

    异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误,只要程序设计得没有问题通常就不会发生。受检异常跟程序运行的上下文环境有关,即使程序设计无误,仍然可能因使用的问题而引发。Java编译...

没有解决我的问题,去提问