- 1、本文档共50页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Java学习基础知识
Java学习基础知识 J2SE Java的标准开发平台。是J2EE和J2ME的基础,Core Java开发基于该平台 J2EE Java的企业己开发平台,Java的主要应用方向,大型系统的开发都是在该平台的完成,Web开发也属于其中的一部分 J2ME Java的微系统开发平台,是一个正在成长的平台,主要用于资源有限的设备上的Java的开发,如手机,PDA等 J2SE:标准开发包 J2EE:J2SE标准开发包+J2EE开发包 运行在服务器上 J2ME:J2SE标准开发包的一部分+J2ME标准开发包+J2ME特定设备开发包 机器环境JDK5.0 Java的环境开发 JDK:Java开发包,包含JVM(虚拟机)、J2SE基本开发包、实用工具(编译、运行、生成文档等)三部分 操作步骤: 1、安装JDK 2、设置环境变量 Java_HOME:Java开发需要的环境变量,值为JDK安装的根目录 PATH:系统环境变量,在保留原来的值的基础上增加JDK安装的根目录下的bin的目录 CLASSPATH:Java开发需要的环境变量,当前值为“.”,表示当前目录 如:JDK安装在C:/j2sdk1.4.2中 JAVA_HOME=C:/j2sdk1.4.2 PATH=原来的值;%JAVA_HOME%/bin Windows PATH=原来的值:$JAVA_HOME/bin UNIX/LINUX CLASSPATH=. 注意:环境变量的值WINDOWS下大小写无关,UNIX/LINUX下大小写敏感 在Windows中先载入系统变量,在载入用户变量,如果同名会覆盖系统变量 Java的优点: 1.开发效率高(相比C++) 原因:没有指针、代码中不进行内存管理、完全面向对象的语言;由JVM和垃圾回收机制实现内存管理,代码中只使用new通知JVM进内存分配,其他操作全部隐式进行;C++必须考虑对C的向下兼容性,所以语言特性中包含少量过程化内容,而Java没有这个顾虑,能够实现完全面向对象的语言,从而开发中不用考虑任何过程化的思想 2.一处编写,处处运行(跨平台);主要是通过JVM特性和语言本身的特性实现 3.多线程 传统的开发语言的多线程是操作系统级的多线程, Java是唯一实现语言级多线程的操作语言 ,是实现跨平台的关键语言特性; JVM(虚拟机) 实现Java代码运行和跨平台特性实现的关键元素可以通过软件或者硬件实现,常用的是软件方式 有多个版本,针对不同的操作系统,上层通过相同的接口和Java运行代码(字节码bytecode)交互,下层通过不同的接口和具体操作系统交互内部实现类似于一台真正的机器,有独立的内存、寄存器等部件(虚拟实现) 垃圾回收机制 实现对象在内存中的管理和回收 管理主要表现在判定哪些对象具备被回收的条件(垃圾)和实现内存碎片整理 垃圾对象的判定:没有任何对象的引用指向的对象称为垃圾对象 垃圾回收机制启动时,会对所有垃圾对象进行回收 垃圾回收底层是通过低优先级的守护线程(系统线程)实现的,一般在程序代码运行的间隙启动 任何情况下垃圾回收不能强制执行,可以通过System.gc()和Runtime.gc()促使其执行,实质上是提高了垃圾回收线程的优先极 Java的执行流程: 1.源代码:文本格式,扩展名为.java 2.目标代码(字节码):源代码编译后得到,二进制格式,扩展名为.class 特点:和具体操作系统无关,只和JVM有关 3.JVM执行目标代码 a、通过类加载器将class文件载入内存 b、使用代码安全校验机制对class文件进行检查 c、使用解释器或者即时代码编译器进行执行 解释器:对字节码文件进行逐行解释执行 即时代码编译器:第一次执行时解释执行,同时将解释后的目标文件(和具体平台有关的二进制文件)存储虚拟机中,之后的执行直接执行该目标文件,不再通过解释器,效率可以大大提高 Java代码的基本单位是类 定义格式:[修饰符]class 类名{....} public类的类名和文件名相同 源文件中可以包含任意数量的类,但至多只能有一个public类 源文件编译后,每个类对应一个class文件,文件名和类名相同 源文件中如果没有public类,文件名任意命名 */ public class FirstPro { /* 入口方法,格式固定,JVM执行该类时执行该方法 */ public static void main(String[] args) { System.out.println(Hello First!); } } class SecondPro { publ
文档评论(0)