最近在授课过程中,发现了各式各样学生在学习Java时遇到的问题。有同学会问我:“杨老师,Java可以自学吗”,这就好像一千个人心中有一千个哈利波特一样,这个答案不绝对也不唯一,Java在我看来是好学,但自学的确阻力有些大,作为一门编程类型的技术语言,它所蕴含的智慧绝对不是靠几本从入门到精通,某某疯狂讲义之类的书所能概括,自学Java你要做好一种英语零基础达到四级水平的准备,在这里我简单说一些自学Java可能遇到的问题,希望会对你的学习有所促进和帮助。


        

给一些想要学习Java同学的一些建议_java

   自学Java可能遇到的问题有哪些?



  一方面是:对Java了解不够深刻,缺乏灵活应用的本领就好像我们学会了26个英文单词,但仍旧不能写出一串正确的句子;



  另一方面是:缺乏独立查找错误的能力、这个能力是伴随所有程序的,无论你有多少丰富的项目经验,你必须能写代码,还能发现bug并且能够解决这个bug,对于自学者而言因为没有基础的沉淀,对Java各种编程属性的不了解,往往会遇到“能正着写,却不能倒着推”的思想习惯。在平时我们更多是三分时间写代码、七分时间找bug,同时也将我们的学习或者工作效率大打折扣。



  耗尽了所有的耐力,学到这里才是Java课程的基础, 你可能用了3个月、5个月甚至更久才勉强消化这些知识,对以后学好框架几乎成了奢望。所以自学Java还是一种奢望,现在生活的诱惑越来越大,自学Java或者死记烂背代码只会浪费时间,最后还会成为徒劳,什么都学习不会。



        很多学生和零基础朋友们想要学习Java的同学都会面临一个问题,那就是Java课程知识点多而杂,面对庞大而复杂的Java学习体系不知从何下手。所以在这里杨老师进行整理了一份Java的学习路线体系图给那些想要自学的新手,希望你一步一个脚印把基础打好。



第一阶段:Java基础语法



1 开发环境搭建



1、计算机编程及开发语言



2、常用的DOS命令和操作



3、Java跨平台原理



4、JDK的安装于卸载



5、配置环境变量



2 Java基本语法



1、Java开发基本语法和编程规范



2、常量与变量



3、数据类型



4、运算符



3 选择结构



1、if



2、switch



4 循环结构



1、while



2、do-while



3、for



4、for-each



5 方法



1、语法结构和特点



2、返回值类型



3、方法重载



4、可变参数



6 数组



1、数组的声明与创建



2、数组的基本使用



3、遍历数组



4、多维数组



5、打印、搜索、排序



6、Arrays工具类



本阶段主要是编程规范与思路的培养;掌握基本的逻辑算法;熟悉Java底层的一些语法规定。



第二阶段:面向对象编程思想



1 类与对象



1、面向对象编程思想



2、类和对象的基本概念



3、构造方法



2



1、包的作用



2、包的定义



3、包的导入



3 面向对象特点



1、封装



2、继承



3、多态



4 抽象类与接口



1、抽象方法



2、抽象类



3、接口



5 其它



1、static-this-super【关键字】



2、final



3、访问权限修饰符



4、代码块



5、内部类



6、枚举



7、设计模式



此阶段主要是培养面向对象编程思想;熟悉面向对象编程相关语法;



第三阶段:GUI-图形界面编程-项目实战



1 MyEclipse或Eclipse工具



1、MyEclipse或Eclipse的安装与使用



2、MyEclipse或Eclipse中的常用快捷键



3、MyEclipse或Eclipse上插件的安装



2 AWT与SWING



1、AWT与SWING的区别



2、常用组件



3、布局模式



4、事件监听机制



3 项目实战



1、图形界面编程的思路与流程



2、需求分析



3、原型设计



4、编码实现



5、测试



6、发布



次阶段主要是为以后项目实战打下基础,能够设计出企业应用所需要的实体类、工具类、模板、接口等基础部分。



第四阶段:高级进阶



1 异常



1、异常机制



2、异常体系



3、处理异常方式



4、自定义异常



2 常用类



1、字符串相关类



2、日期相关类



3、数学算法相关



4、系统相关类



5、随机数



3 多线程



1、多线程的创建与启动



2、线程同步



3、线程通信



4、线程池



5、定时器



4 集合框架



1、数据结构



2、List/Set/Map



3、Collection/Collections/Properties



4、迭代器



5、比较器



5 IO流



1、File文件



2、IO流操作的多种分类和方式



3、方法递归调用



4、正则表达式



6 网络编程



1、IP/端口/URL等网络基础



2、HTML编码解码工具



3、TCP/UDP网络协议



7 反射机制



1、反射的概念



2、各种Class实例的获得方式



3、Constructor/Field/Method



学完上面这些知识便能够使用Java提供的基本功能,结合Swing编程做一些桌面应用程序及游戏,如:贪吃蛇、俄罗斯方块、打飞机、推箱子、棋牌类游戏、模拟开发类似Editplus或者NotePad++的小型编辑器等。赶紧去动动手指尝试一下吧。


给一些想要学习Java同学的一些建议_eclipse_02 

作者: 杨校