java基础 (java工程师入门应该了解的)
1)建立Java开发环境
2)理解Java特性(features)
3)理解Java虚拟机软件的功能
4)描述垃圾回收概念
5)枚举实现Java代码安全方式
6)编码 编译 运行 JAav 应用程序
1.JDK(JAVA开发工具包):JVM(运行环境) API(类集合 编程文档),还有一些开发工具
包括 java虚拟机(JVM):编译和执行java程序 (跨平台)
JDK类库(API):包含各种java类及实用类:java.long,java.io、java.util,、javax.swing、java.sql等包中的类都位于JDK类库中。
开发工具:javac编译工具;
java运行工具;
Javadoc生成JavaDoc文档的工具
jar打包工具
2.JVM:Java Virture Machine,模拟java运行环境 虚拟出CPU (支持了JAVA的跨平台)
3.JAVA不跨平台而Bytecode字节码跨平台Bytecode字节码属于中间代码
A)和java相关的环境变量有那几个,它们有什么作用
JAVA_HOME:简化其它变量设置过程中的内容输入。可先行将JDK的安装路径定义为一变量,以后凡使用到JDK安装路径的地方均使用该变量进行替换。
PATH:指定执行外部命令时找寻对应可执行文件的路径范围。
CLASSPATH:代表Java类的根路径,java命令会从CLASSPATH中寻找所需的Java类;Java编译器编译Java类时,也会从CLASSPATH中寻找所需的Java类;classpath的默认值为当前路径。
B)java的优秀特性
跨平台:字节码跨平台,在任何平台上字节码都一样,但不同平台有不同平台的JVM
易编程:没有指针(垃圾回收器)、面向对象(符合人类思考方式)
代码安全:有字节码校验器,适合在网络传输
C)代码校验器规范
1)代码是否满足java的规范要求
2)代码不能破坏系统的安全性
3)没有堆栈溢出 上溢或下溢
4)参数类型的检查
5)类型转化的检查 类型可以相互转化
堆栈的上溢和下溢:
上溢:是当一个超长的数据进入到缓冲区时,超出部分被写入上级缓冲区,上级缓冲区存放的可能是数据、上一条指令的指针,或者是其他程序的输出内容,这些内容都被覆盖或者破坏掉。可见一小部分数据或者一套指令的溢出就可能导致一个程序或者操作系统崩溃。
下溢:是当一个超长的数据进入到缓冲区时,超出部分被写入下级缓冲区,下级缓冲区存放的是下一条指令的指针,或者是其他程序的输出内容。
4.Garbage Collection管理内存 (自动释放空间 处理内存 )系统级线程
New——>新建对象——>创建内存空间,申请内存空间
5.JIT:just In Time 及时编译器 把Java字节码转换成Java直接运行的程序
6.Package 一个包可以包含多个Java类 管理一组Java类 在文件系统中对应的是目录
1)解决名称冲突问题
2)便于类管理
类的全限命名:包名+类名
Cp:装载路径
import导入 DATE获取当前时间
7.public的源文件只能有一个 public的公共的类名和文件名保持一致
8.Javac Java源文件编译 编译成class文件 一次可以编译多个文件
9.Java程序从main方法开始执行
10.Java一个源文件中可以有多个java类。但只能有一个是public的 多个源文件可以创建多个public的
类
11.Api:应用程序编程接口 类库
12.Java.lang包的默认值
Javac -d(自动创建目录)classes src/hello.java
Java -cp(装载路径) classes com.briup.chap01.hello
java基础 (java工程师入门应该了解的)的更多相关文章
- java基础---->java中正则表达式二
跟正则表达式相关的类有:Pattern.Matcher和String.今天我们就开始Java中正则表达式的学习. Pattern和Matcher的理解 一.正则表达式的使用方法 一般推荐使用的方式如下 ...
- Java基础-Java中的堆内存和离堆内存机制
Java基础-Java中的堆内存和离堆内存机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.
- Java基础-Java中的内存分配与回收机制
Java基础-Java中的内存分配与回收机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. 二.
- Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)
Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在学习Java的之前,你可能已经听说过读 ...
- Java基础-Java中的并法库之线程池技术
Java基础-Java中的并法库之线程池技术 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是线程池技术 二.
- Java基础-Java中23种设计模式之常用的设计模式
Java基础-Java中23种设计模式之常用的设计模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.设计模式分类 设计模式是针对特定场景给出的专家级的解决方案.总的来说设 ...
- Java基础-JAVA中常见的数据结构介绍
Java基础-JAVA中常见的数据结构介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是数据结构 答:数据结构是指数据存储的组织方式.大致上分为线性表.栈(Stack) ...
- Java基础-Java数据类型
Java基础-Java数据类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据类型的作用 数据类型就是一组值,以及这一组值上的操作,数据类型可以决定数据的存储方式,取值范围 ...
- Java基础组件快速入门
最近需要上线很多新的JAVA项目,然而很多JAVA的相关库都不太熟悉,项目实现起来遇到了不小阻力,熬了好几天夜.现在手头的工作基本完成了,因此打算好好来归纳下java的相关工具库,将来需要借助你们,好 ...
- Java基础1,入门基础知识
本文知识点(目录): 1.java简介 2.环境的搭建 3.关键字 4.标识符 5.注释 6.常量 7.进制的转换 8.变量 9.数据类型的转换 ...
随机推荐
- [Ubuntu] Install teamviewer9 on Ubuntu14.04_x64
The article copied from http://ubuntuhandbook.org/index.php/2013/12/install-teamviewer-ubuntu-1404/ ...
- [Ubuntu] Install subversion1.8 on Ubuntu13.10
Subversion1.8 is difference far away from subversion1.7, here is the steps to install subversion1.8. ...
- [Ubuntu] ubuntu13.04 从php5.4降级到php5.3
ubuntu12.10以后,默认的deb安装库上面的php版本已经是5.4了,公司的项目使用5.4的时候,还是会出现很多问题,所以不得不降级安装5.3 顺便说一句,我原来的环境是nginx + php ...
- 【ruby】快速安装gems的方法
在使用gem install ...的时候增加参数: --no-ri 可以不安装ri部分 --no-rdoc 可以不安装rdoc部分
- 【RoR win32】提高rails new时bundle install运行速度
在新建rails项目时,rails new老是卡在bundle install那里,少则五分钟,多则几十分.这是因为rails new时自动会运行bundle install,而bundle inst ...
- 【crunch bang】 增加“菜单项”
[右键菜单]->[Settings]->[Openbox]->[GUI Menu Editor] 挑选合适的位置,增加[菜单项],编辑内容.
- python通过win32api轻松获取控件的属性值
1.如何利用句柄操作windows窗体 首先,获得窗体的句柄 win32api.FindWindows() 第二,获得窗体中控件的id号,spy++ 第三,根据控件的ID获得控件的句柄(hwnd) ...
- iOS 学习笔记 七 (2015.03.29)code snippet操作
1.code snippet 备份路径:~/Library/Developer/Xcode/UserData/CodeSnippets/
- javaWeb 使用cookie显示商品浏览记录
package de.bvb.cookie; import java.io.IOException; import java.io.PrintWriter; import java.util.Date ...
- 1.struts2开发流程
1下载struts包,下载地址为:http://archive.apache.org/dist/struts/library/ 2.解压后将lib下的这几个jar包放到自己写的web项目中 放到这 ...