Java是指什么
java概念
Java是一种可以撰写跨平台应用程序的、面向对象的程序设计语言。简单说,Java就是一种语言,不过是一种针对jvm的语言,Java编译后是字节码,而jvm会把这些字节码解释成机器码,然后做出相应的动作。
java虚拟机
Java虚拟机(JVM)是Java Virtual Machine的缩写,是指建立在硬件和操作系统之上,运用硬件或软件手段实现的虚拟的计算机。
Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。可以运行Java字节码的虚拟计算机系统 ,它有一个解释器组件,可以实现Java字节码和计算机操作系统之间的通信。
java的垃圾回收机制
gc即垃圾收集机制是指jvm用于释放那些不再使用的对象所占用的内存。在C/C++中,程序员需要自己管理内存,Java提供了一个系统级的线程来跟踪内存分配,不再使用的内存区将会自动回收不同的JVM的实现中,垃圾收集机制大不相同若需要使一个对象被回收,必须移除其上的所有引用,通常可将其置NULL但是,即使有了垃圾收集机制,仍然可能出现内存溢出的情况。
java运行环境搭建
JAVA_HOME
C:Javajdk1.7.0_55
PATH
%JAVA_HOME%in;%JAVA_HOME%jrein;
CLASSPATH
.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar
java的优点
1、平台无关性
平台无关性是指Java能运行于不同的平台。Java引进虚拟机 原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。虚拟机是个用来解释Java指令的软件包,可以让Java在任何机器上运行,比如有运行在Mac或 UNIX下的虚拟机软件包。
2、安全性
Java的编程类似C++,学习过C++的读者将很快掌握Java的精髓。Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。
3、面向对象
Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。
4、分布式
Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP和FTP协议传送和接受信息的方法。这使得程序员使用网络上的文件和使用本机文件一样容易。
5、解释型
我们知道C,C++等语言,都是针对CPU芯片进行编译,生成机器代码,该代码的运行就和特定的CPU有关。Java不像C或C++,它不针对CPU芯片进行编译,而是把程序编译成称为自字节码的一种“中间代码”。字节码是很接近机器码的文件,可以在提供了java虚拟机(JVM)的任何系统上被解释执行。
6、动态
java程序的基本组成单元就是类,有些类是自己编写的,有些是从类库中引入的,而类又是运行时动态装载的,这就使得Java可以在分部环境中动态的维护程序及分类,而不像C++那样,没档期类库升级以后,如果想让程序具有新类库提供的功能,就需要修改程序,重新编译。
java的用途
1、网络应用程序开发,例如:网上银行(中国银行,建设银行,工商银行的网上银行都是用J2EE开发出来的,你看看他网银的网页的后缀名JSP就知道),网页游戏等。
企业管理软件,现在很流行的B/S(浏览器/服务器)架构管理程序很多就是用J2EE开发的。
3、手机游戏,你看到那些手机游戏安装文件的后缀名.jar了吗?就是这JAVA开发出来的标志。开发这些东西一般用JAVA ME(J2ME)。
4、嵌入式开发,例如给电视机顶盒,小型家电写程序。java se(j2se)是一个基础,如果你想靠JAVA吃饭那么J2EE和J2ME要选一个来学深入学习。如果想做网络程序就学J2EE,想学手机编程,嵌入式类的就去学J2ME.不过一般J2EE的工作机会比较多。
推荐教程:java快速入门