java由哪几部分构成?
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。
Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。
Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.5,最近版本为Java1.7。
Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。
jvm是如何实现的?
编程语言和自然语言类似,都是为了交流,自然语言用于跟人交流,程序语言则用于指示机器。jvm其实也就是一个程序,这个程序能接受你的Java代码,然后根据你的意愿执行一系列操作。举个例子,你可以写一个这样的程序,这个程序接受用户输入一句话,如果用户输入“beep”则调用机器的鸣叫,如果用户输入“exit”,则关掉本程序。在这个例子中,其实用户写的“beep”和“exit”就充当了程序语言的角色,只不过这门语言过于简单因此不可能普及。而java则具有完善的体系能够支持你表达任何意愿,然后jvm理解你的java语言并执行相应操作,这就是程序语言的原理。当然java还有优化的方案,它的编译器将你的java语言翻译成字节码,因为jvm执行字节码的速度比直接理解java代码要快很多,后来的版本还引入了JIT技术,实时将字节码再编译成机器码,这样就能让机器直接执行指令而不需要jvm去解释。至于垃圾收集器,就是jvm维护着每一个对象的引用(可以理解成C++里面的指针),根据一定的算法判断其是否可达,如果这个引用不可达(也就是程序的后续部分已经无法获取这个引用,比如说已超出block范围了)那么就清除这个内存对象。这样的好处是能避免由于程序员的疏忽引起的内存泄露,缺点是内存的清理不够即时,因而无用的对象常常会占据内存很长时间。你也可以在C++里实现垃圾回收器,思路是写一个用于管理内存的类,然后程序里不再用new来新建对象,而是用这个类来产生对象,类内部拥有这个对象的指针,并在适当的时候delete它,这样就实现垃圾自动回收了,当然要写这样一个类是很困难的事。
做Java开发,需要会哪些技术啊?
java开发需要学习的内容有:
初级部分:Java OO程序设计基础,包括 J2sdk基础、Java面向对象基础、Java API使用、数据结构及算法基础、Java AWT图形界面程序开发。
J2SE平台Java程序设计,包括Swing图形程序设计, Socket网络应用程序设计,对象序列化,Java 常用数据结构,Applet,流和文件,多线程程序设计。
Linux的基本操作,Linux下的Java程序开发,Linux系统的简单管理。
Oracle数据库,包括SQL/PLSQL;数据库和数据库设计;简单掌握ORACLE9i 数据库的管理。
中级部分:Java Web应用编程,包括 Java Oracle 编程,即JDBC;Java Web编程,包括JSP、Servlet,JavaBean;Java应用编程,包括Weblogic、Websphere、Tomcat;以及利用Jbuilder开发Java程序。
MVC与Struts,学习业界通用的MVC设计模式和Struts架构。
高级部分:J2ME程序设计,包括J2EE程序、J2ME;Java高级程序设计(J2EE),包括J2EE体系结构和J2EE技术、EJB;Weblogic使用、 JBuilder开发。
Java和XML,包括Java Web Service,Java XML, 业界主流XML解析器程序设计。
软件企业规范和软件工程,包括UML系统建模型和设计(Rational Rose 200x)软件工程和业界开发规范;CVS版本控制、Java Code书写规范。