java程序员要掌握的知识
对于java方面的知识,涉及到服务器方、3层结构编程至关重要。程序员在这个时候不能再用诸如数据库结果集之类的结构描述数据了。下面是小编为大家整理的java程序员要掌握的知识,希望对您有所帮助!
java程序员要掌握的知识
1、Java编程的知识和技能、JEE体系的知识
2、数据库的基本知识,包括Oracle和SqlServer和MySql
3、Web开发的知识和技能
4、EJB组件开发的知识和技能
5、流行的Struts、Spring、Hibernate、Webwork、Ibatis开发框架
6、实用的Ant、Xdoclet、Log4j、Junit、Vss、Cvs等开发工具
7、工作流技术和实用的Shark、JBPM等工作流框架
8、搜索引擎技术和实用的Lucene等搜索引擎框架
8、WebService技术和SOA架构
10、AJAX技术和Dwr框架
11、UML软件工程的知识
12、Java的设计模式,JEE的设计模式和JEE应用程序框架设计
13、好的编程思想和素质,IT学习的方法和技能
14、众多开发工具的使用,开发平台和环境的配置
15、完整的JEE项目开发经验和技能
java面试基础知识
1、静态变量和实例变量的区别?
在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。
在程序运行时的区别:实例变量是属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配内存空间,才可以使用这个实例变量。
静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会分配内存空间,而且只分配一次,静态变量就可以被使用了。总之,实例变量必须创建后才可以通过这个对象来使用,静态变量则直接可以使用类名来调用。
2、什么是反射机制?
java反射是在运行状态中,对任意一个类,都能够知道这个类的所有属性和方法,对于任何一个对象,都能够调用它的任意一个属性和方法,这种动态获取信息以及动态调用对象的方法的功能称为java的反射机制。
3、什么是装箱?什么是拆箱?
装箱:自动将基本数据类型转换为包装器类型。
拆箱:自动将包装器类型转换为基本数据类型。
4、Java 中覆盖和重载是什么意思?
覆盖(Override)是指子类对父类方法的一种重写,只能比父类抛出更少的异常,访问权限不能比父类的小,被覆盖的方法不能是 private的,否则只是在子类中重新定义了一个新方法。
重载(Overload)表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同。
java入门需要学习哪些东西
1、首先要学习java的基础知识。
不要被新技术迷惑,所谓万变不离其宗,新技术都是基于java的基础之上,如果基础不扎实,对于这些新技术的理解也是一知半解,学不到根源。
2、做一个java项目
在学习完java的基础知识之后,做一个java项目来巩固一下,在项目中会发现很多问题,通过解决问题,加深基础知识的掌握。
3、学习数据库的基础知识和开发应用
软件开发离不了数据库,掌握几种流行的数据库:Oracle、SQLserver、MySQL等。
4、JEE基础
在这里首先要学习网站基础,包括HTML、DHTML、JavaScript;接着要学习 XML,XML JAXP;然后学习JEE基础,包括JEE开发环境,RMI/IIOP、JNDI;最后学习JDBC数据库的应用开发。
5、web开发
全面的JEE的web开发知识:Servlet JSP javaBean TagLib,到这里做一个完整的web应用项目开发。
6、EJB开发
包含全面的EJB知识:1)EJB入门和无状态会话Bean;2)有状态会话Bean;3)BMP和CMP是实体Bean;4)jms和MessageDrivenBean;5)事物和安全(JTA、JTS和JAAS);6)WebService的开发和应用;
7、开源框架的学习
学习几种现在流行的开源框架:Struts、Spring、Hibernian、Webwork等。完整的学习这些框架的开发和应用。如果有兴趣还可以学习Ibati框架、AJAX技术和DWR框架的开发和应用。
8、JEE项目
综合应用JEE的知识来开发一个完整的应用。
9、面向对象分析与设计
java是一种面向对象的语言,所以要深入学习面向对象的分析与设计,另外还要学习UML统一建模语言。
10、接下来就是系统设计与架构
这里要学习的是Java设计模式、EJB设计模式、JEE核心设计模式、JEE应用程序框架设计。
11、软件工程
软件工程基本理论知识的学习,还有Rup和极限编程。
12、技术研究
学习搜索引擎技术:如Lucene等、工作流技术:包含Shark、JBPM等、SOA架构和应用。
13、综合项目实战
实现一个企业级的应用。
Java工程师需要具备什么技能
1、夯实的java基础
当前的java新技术层出不穷,各企业的有不同的侧重点,根据企业用人的需求,只有具备坚实的java基础功底的程序员才能快速掌握新的技术。需要在核心算法、面向对象应用、数据结合及集合框架、反射、输入输出、多线程、异常处理等方面进行深入学习。
2、熟悉Linux操作系统
Linux是当今用作广泛的服务器操作系统。合格的java高级工程师必须具备熟练地Linux操作技巧,这也正是在企业面试中获得加分的重要指标之一。
3、深入学习数据库技术
互联网公司对Java应用离不开数据库技术。任何一个大中型应用,数据库设计的好坏、数据库访问的效率直接决定了该项目的成败。当前数据库最主流的技术有Oracle和MySQL两种,除了能熟练应用数据库体系结构和SQL语句之外,还要掌握数据库设计、SQL语句优化方面。
4、系统的Web前端技术
随着互联网技术由Web2.0向Web3.0迈进,Web前端技术,包括HTML、CSS特别是java script语言越来越被企业重视。很多企业为此设置“Web前端工程师”岗位,所以作为一名合格的java高级工程师要不断学习包括java script在内的Java知识还有其相关的Ajax、JQuery框架、Ext-JS框架。
5、企业及框架
Java是组件和框架的世界,所有的java程序员都应当了解java框架。
6、专门的企业级开发及部署环境
企业在开发、测试、部署实际项目时需要有特定的软件环境,但是很多技术人员往往不太重视这个,所以在工作中会出现很多问题和失误甚至被淘汰。因此,作为java工程师对Linux高级命令集脚本编程、远程登录、Art、单元测试技术、Maven构建技术、SVN应用技术等要有所了解。
7、规范的企业开发流程及文档
软件开发是团队合作,因此企业开发流程和文档规范尤为重要。这也是区分“草根程序员”和“正规程序员”的重要指标之一。开发项目项目无论大小都应该按照企业开发的流程进行(需求分析、系统设计、编码实现、单元测试、系统测试、部署上线)。