Java的学习是比较复杂的,主要表现在相关的一系列平台、规范和协议上。有经验的Java程序员都知道,只掌握了Java语言本身很难开发应用程序。本文不讨论这些复杂的概念,而是我是在北京参加的培训,现在从初学者的角度,对于Java语言本身的学习提出自己的见解和建议。本文的讨论基于以下假设:

1. 学习的目的是为了将来进行应用程序的开发,而不是进行语言理论研究

2. 将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台

一、掌握静态方法和属性

静态方法和属性用于描述某一类对象群体的特征,而不是单个对象的特征。java中大量应用了静态方法和属性,这是一个通常的技巧。但是这种技巧在很多语言中不被频繁地使用。理解静态方法和属性对于理解类与对象的关系是十分有帮助的,在大量的java规范中,静态方法和属性被频繁使用。因此学习者应该理解静态方法和属性。Java在方法和属性的调用上是一致的,区别只表现在声明的时候,这和c++是不同的。

二、重视接口

在面向对象早期的应用中大量使用了类继承。随着软件工程理论的不断发展,人们开始意识到了继承的众多缺点,开始努力用聚合代替继承。软件工程解决扩展性的重要原则就是抽象描述,直接使用的工具就是接口。接口近年来逐渐成为java编程方法的核心。另一方面,就应用而言,大部分开发是建立在规范基础之上的,不需要自己建立复杂的继承关系和庞大的类。因此读懂规范和用好规范已经成为应用程序开发人员的首要任务,Java各项规范的主要描述手段就是接口。

三、学好集合框架

java描述复杂数据结构的主要方式是集合框架。Java没有指针,而是通过强大的集合框架描述数组、对象数组等复杂的数据结构。学好这些数据结构的描述方法对于应用程序编写,特别是涉及到服务器方、3层结构编程至关重要。程序员在这个时候不能再用诸如数据库结果集之类的结构描述数据了。

由于很多语言没有这么强大的集合框架体系,很多初学者不知所措,更不知道拿来做什么用,因此应该引起足够的重视。

四、例外捕捉

java对例外捕捉的强调是空前的,它强迫程序员用显著的与逻辑方法完全不同的方式描述例外捕捉,对于程序描述的完整性和严谨性有很大的意义。c++也有类似的机制,但是我们看到很多c++程序员并不习惯使用这些机制。
Java的初学者应该充分学习好这种例外捕捉机制,养成良好的编程习惯。

五、多线程需要理解机理

很多java程序员热衷于多线程程序编写,认为是对逻辑能力的挑战。其实在大量应用中根本就不需要编写多线程程序,或者说大多数编写应用程序的程序员不会去写多线程程序。这是因为多线程机制都内置到基础平台当中了。
程序员应该了解的是多线程原理和多线程安全,这对于今后准确地把握程序是至关重要的。

例如JSP中编写到不同的位置对于多个用户环境的安全影响完全不同,又如著名的Super Servlet是每一个访问作为一个进程,但是每一个页面是一个线程,和Servlet正好相反,对程序的性能和安全的影响有天壤之别。

六、了解网络编程

java号称是最强的网络编程语言,但是大多数应用程序开发人员是从来不会自己开发什么底层的网络程序的。需要做只是了解原理就够了。网络机制的实现是靠平台实现的,除非自己开发平台,否则是不需要知道socket怎么实现,怎么监听访问的。因此在这方面花太多的功夫就偏离了“将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台”这一假设

转载于:https://www.cnblogs.com/hyteddy/archive/2010/12/07/1899071.html

菜鸟入门Java语言学习六大要点相关推荐

  1. 倚天剑与屠龙刀java_菜鸟入门 java语言学习六大要点

    Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface.简称API)构成.Java 应用编 ...

  2. 计算机二级为什么靠Java的少,计算机二级考试:Java语言学习六大要点

    计算机二级考试:Java语言学习六大要点 一.掌握静态方法和属性 静态方法和属性用于描述某一类对象群体的特征,而不是单个对象的特征.Java中大量应用了静态方法和属性,这是一个通常的技巧.但是这种技巧 ...

  3. linux菜鸟入门命令——自我学习

    linux菜鸟入门命令--自我学习 ls或者ll或者dir:查看该目录下所有文件pwd:查看该目录所处的目录结构位置mkdir mytest:创建mytest文件夹cd ..返回上级目录 tar zc ...

  4. Java语言学习思维导图

    Java语言学习思维导图

  5. 菜鸟入门:Java语言学习

    Java的学习是比较复杂的,主要表现在相关的一系列平台.规范和协议上.有经验的Java程序员都知道,只掌握了Java语言本身很难开发应用程序.本文不讨论这些复杂的概念,而是我是在北京参加的培训,现在从 ...

  6. Java编程学习入门、Java语言学习、Java入门必看

    一.初识Java 1.生活中的程序: 从起床到教室上课的过程 穿衣打扮>起床>洗漱>出宿舍>>吃早餐>到教室 按照特定的顺序去完成某一件事的过程我们叫做生活中的程序 ...

  7. java 判断类型_如何快速入门Java编程学习(干货)

    一.初识Java 1.生活中的程序: 从起床到教室上课的过程 穿衣打扮>起床>洗漱>出宿舍>>吃早餐>到教室 按照特定的顺序去完成某一件事的过程我们叫做生活中的程序 ...

  8. java单引号转义_Java基础入门——Java语言基础(上)

    本篇我们开始进入Java的学习,首先在学习如何编写Java语言前要先了解Java程序的基本结构. 一.Java程序的基本结构 一个Java程序的基本结构大体可以分为包.类.main()主方法.标识符. ...

  9. 【week5】JAVA语言学习及复习

    目录 JAVA语言复习 一.JAVA语言的历史及特点 二.JAVA开发环境配置 三.JAVA语言基本语法 四.JAVA变量类型 五.方法.类.对象.接口和函数 JAVA语言复习 常常听到前辈们和许多大 ...

最新文章

  1. 172. 阶乘后的零
  2. CentOS 6.4下安装中文输入法
  3. 如何学习——为什么不想听课
  4. docker安装运行rancher脚本
  5. Visual computing——概述
  6. java 字符串拆分成单个字符放到 list 集合
  7. 中国科学院大学庆生 一颗小行星以“国科大”命名
  8. 车联网服务non-RESTful架构改造实践
  9. 想提高用户访问的响应速度和成功率还不赶快学习CDN
  10. 从DB-Engines看传统数据库生存状况
  11. 阻止默认事件event.preventDefault();
  12. 排序算法之——堆排序分析
  13. 如何计算CRC循环校验码示例
  14. 谷歌浏览器搜索使用指南
  15. 一文读懂javascript深拷贝与浅拷贝
  16. j2ee课程设计—基于activiti的请休假系统
  17. 商标45类分类表明细表_45类商标分类明细_45类商标经营范围包括哪些商品-商标查询-知夫子...
  18. 一岁半宝宝不肯吃饭怎么办
  19. Docker 镜像和容器
  20. 北京人工智能产业联盟成立,百度CTO王海峰出任联盟理事长

热门文章

  1. SwitchHosts-win32-x64
  2. volatile 关键字解析
  3. 使用MyEclipse将HTML5移动项目迁移到PhoneGap(一)
  4. AtCoder Regular Contest 058
  5. 增加 addDataScheme(file) 才能收到SD卡插拔事件的原因分析 -- 浅析android事件过滤策略...
  6. DIV+CSS专题:十天学会DIV+CSS
  7. XCTF-MISC-新手区-gif
  8. vue 父组件传子组件数值,父值变更子获取的值没有变的问题
  9. mysql与oracle性能对比,Oracle与MySQl对比,
  10. java 多线程 交替_java 多线程–线程交替