- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
corejava笔记
设置环境变量:
1)JAVA_HOME-指向JDK的安装目录
2)CLASSPATH-指向类的路径
3)PATH-常用命令的搜索路径,保留原有的PATH设置
Windows下:
1)配置
PATH=....;%JAVA_HOME%\bin
注意:反斜杠
JAVA特性:
1.一次编写,到处运行:
1)先将源程序编译成一种中间语言,叫做byte code(字节码)。(字节码不受CPU和操作系统的影响)
2)再将字节码翻译成特定操作系统可以执行的二进制指令。
对比C/C++语言
1)消除了指针,保留了指针中好的特性,用引用代替指针。
2)自动的内存管理机制。内存申请方式单一,所有的对象统一采用new操作符建立在内存堆栈上。
1.JVM——提供解释性环境
1)编译——做简单的语法检验;将源文件翻译成字节码
2)运行——JVM加载字节码文件,再翻译成与操作系统对应的机器指令,运行。 不同的OS有不同的JVM版本。
2.GC——垃圾回收机制
自动回收内存。
1)GC是优先级很低的系统级线程。
2)开发人员可以在编码中调用GC,但只是suggest,not force!是否执行回收工作由JVM自己决定
java.lang.System.gc()/java.lang.Runtime.gc()
HelloJava.java
1)编译: javac -d bin src\HelloJava.java
编译后的目录结构:com\briup\ch01\HelloJava.class
2)运行: java -cp bin com.briup.ch01.HelloJava
构建java源程序的三要素:
1)package包,语法:com.briup.ch01.
2)import 导入外部的类,可省略java.lang包和同一个package下的类不需要导入
3)class CLASSNAME{...},CLASSNAME命名规则:首字母大写和文件命名相同,后缀为“.java”
代码运行机制(workflow)
1、编译:.java-.class文件。命令:javac
2、运行:命令:java
1)类加载器(class loader)——将字节码装入内存
2)字节码校验器——验证字节码的合法性
3)执行:
a)解释器:将字节码一条条翻译成系统指令,再执行,每次都 要翻译效率低
b)JIT:即时翻译技术,
字节码校验器
1)验证JVM版本是否兼容;
2)检测代码不会破坏系统的一致性,不能对OS进行恶意修改;
3)不会在内存中发生栈上溢或下溢;
4)检测参数类型是否合法;
5)检测类型转换是否正确
类加载器
1.类加载器类型:
1)启动类加载器(bootstrap classloader
加载java核心的API:$jdk/jre/lib/rt.jar
2)扩展类加载器(extensible classloader)
加载扩展的API:$jdk/jre/lib/ext/*.jar
3)系统类加载器(system classloader)
加载用户自定义的class
2类加载流程——双亲委托机制
1)先运行启动类加载器加载核心API
2)在运行扩展类加载器,加载扩展API
3)最后运行系统类加载器,加载用户自定义class
优势:
1)避免重复加载,在上一级加载成功,就不会再往下加载
2)避免自定义的类覆盖java核心API中的类
JAR命令:
1.打jar包:jar -cvf hello.jar com
hello.jar——自定义的Jar包名称
com——指定要压缩的目录
2.解压jar包:jar -xvf hello.jar
验证加载过程:
1)将自己打的hello.jar放入$jdk\jre\lib\ext目录下
2)修改原有的Hello.java文件的输出内容
3)重新编译运行的HelloJava,运行的应该是扩展目录下的HelloJava
第二章
标识符,关键字和类型
COMMENTS-注释:
三种注释
1)单行注释://Comments on one line
2)多行注释:/*Comments on one or more lines*/
3)javadoc文档注释:/**javadoc comments content*/
命令
javadoc -d doc src/*.java
doc-指定doc存放的目录,会自动创建
编码
1)每条语句以;结束,建议一行只写一条语句,书写时要缩进
2)java中不允许有孤立的代码存在,都要写在代码块{}中
class MyClass{
您可能关注的文档
- Cadence Design entry HDL 教程.doc
- C12014_上市公司并购重组_完整答案.doc
- cad大地坐标转施工坐标方法.doc
- cad快捷键一览表.doc
- CAD报告.doc
- CAD练习题.doc
- CAD教程第五章.doc
- CAD装配图明细栏的绘制.doc
- CAE概论结业论文.docx
- CAJ转换成Word方法大全.doc
- 《JJF 2132-2024荧光紫外灯人工气候老化试验装置校准规范:辐射照度参数》.pdf
- JJF 2120-2024轮速传感器校准规范.pdf
- 计量规程规范 JJF 2120-2024轮速传感器校准规范.pdf
- 《JJF 2129-2024钙钛矿太阳电池校准规范:光电性能参数》.pdf
- JJF 2129-2024钙钛矿太阳电池校准规范:光电性能参数.pdf
- 《JJF 2120-2024轮速传感器校准规范》.pdf
- JJF 2117-2024沥青混合料理论最大相对密度仪校准规范.pdf
- JJF 2116-2024特定蛋白分析仪校准规范.pdf
- 《JJF 2116-2024特定蛋白分析仪校准规范》.pdf
- 计量规程规范 JJF 2117-2024沥青混合料理论最大相对密度仪校准规范.pdf
文档评论(0)