corejava-chap01
《java是什么:》
Programming language 程序语言
Development environment 开发环境
Application environment 应用环境
Deployment environment 部署环境
《java 优点》
1.Provide an interpretation envirenment 解释性的环境
>Accelerate development 加快开发速度
>Write once,run anywhere 跨平台运行
>Multi-thred 多线程(语言级别)
>Dynamically support upgrading 支持向上自动转型
2.Provide a easier way to program 程序简单
>More robust:no pointer ,no memory management in codes,Pure object-oriented programming
没有指针(引用),不用内存管理(java程序员只能操作堆) ,面向对象程序
3.How to implements the above
>JVM,Garbage Collection and Code Security Verifying
java虚拟机,垃圾回收机制,代码检测
《java的3个特性》
无指针(使用引用)、不需要进行内存管理、代码检测(字节码)
需要理解的:jvm,垃圾回收机制,代码检测的内容
jVM:创建一个解释执行的环境
java程序先通过编译形成字节码文件,通过本地或者网络进行传输,
然后在每一个拥有java虚拟机环境的机器上执行(跨平台),执行前先装载字节码文件,然后对字节码文件进行检测(代码检测)
随后在解释性环境下进行执行,部分关键,经常重复的代码会实现即时编译执行(JIT),完成代码的功能。
因此,java程序需要分成编译(compile)与执行(runtime)两个状态。
虚拟机——>实现跨平台
ByteCode 字节码
JVM
CPU
对于JIT(Just In Time)网上有相应的说明。
Code Security Verifying:
代码检测主要检测内容:
》javac的版本要低于java的版本,不然不兼容;
》系统的一致性(有效地址空间);
》栈是否溢出
》参数类型是否匹配
》类型转化是否正确
Garbage Collection:
垃圾回收机制:java的垃圾回收机制是自动进行的(实际就是一个扫描内存的线程),不需要开发人员过多的关系内存的问题。
可以通过以下指令显示调用:
java.lang.system.gc() runtime.gc()
一个基本的java程序包括:
报名、类名、成员属性、成员方法、程序入口等等。
最核心的java包:java.lang包
java.util(常用算法包,如日期等)
java.net(网络包)
java.io(程序输入输出)
java.awt/javax.swing/java.awt.event(窗口、事件)
corejava-chap01的更多相关文章
- java常用指令
javac 编译java源文件到字节码文件 -d XXX 1.指定编译后的字节码文件存放位置. 2.若编译的java源文件中使用包名,则根据包名生成相应的子目录 javac -d . Hello.ja ...
- linux指令备份
ls -a 显示隐藏文件 cd 回到当前用户的目录 /home/ubuntu touch 创建文件 cat Hello.javamore/less Hello.java分页显示 grep root / ...
- CoreJava逻辑思维-顺时针打印自定义矩阵
CoreJava逻辑思维-顺时针打印自定义矩阵 这两天回顾了一下刚入Java时的一些比较有意思的逻辑题,曾经也费劲脑汁的思考过的一些问题,比如百钱百鸡最简单的算法啦之类的,而今天博主想说的是一个循环打 ...
- 不该被忽视的CoreJava细节(一)
一.系列文章导言 <不该被忽视的CoreJava细节>系列文章将会持续更新.我希望自己通过这一系列文章的写作,能与读者一起进步,逐步完善对Java体系结构的了解. 二.本期关注点 几乎翻看 ...
- 第一章 corejava的入门
第一章 corejava的入门一:什么是语言语言=os+数据结构+算法+思想os:操作系统数据结构:队,栈,二叉树,链表算法:做游戏开发时非常重要面试题:int a>0,b>0只使用一条输 ...
- CoreJava学习笔记1-基本概念、对象和类
一. java的基本程序设计结构 (一) java共有8种基本类型:4种整型,2种浮点类型,1种char,1种boolean. 1) 4种整型:byte(1).short(2). ...
- CoreJava知识点1
一.基础 1.Java最大特点:开源open 2.J2EE由表示层.业务层.数据层组成 3.环境变量:javahome:JDK的安装路径 path:%javahome%\bin ——虚拟机 执行命令 ...
- Java知识总结--CoreJava
在网上看到的关于Java的知识总结,觉得很受用,分享给大家..... 如果有什么错误,也欢迎指正批评. 1 简述下java基本数据类型及所占位数,java基本数据类型:4类8种 整数类型:byte(1 ...
- CoreJava(一)—— Java迭代语句
本文介绍一些关于迭代语句的一些相关技巧以及Java8中的迭代语句的使用方法. public class TestBreak { public static void main(String[] arg ...
- Java面试题 corejava(二)
65.JAVA 语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try 块中可以抛出异常吗?[基础] 答:Java 通过面向对象的方法进行 ...
随机推荐
- Myeclipse 保存jsp异常Save FailedCompilation unit name must end with .java, or one of the registered Java-like extensions
如图 解决方法:去掉jsp页面的调试断点
- Python学习总结 06 paramiko 远程执行命令
有时会需要在远程的机器上执行一个命令,并获得其返回结果.对于这种情况,python 可以很容易的实现. 1 工具 Python paramiko 1) Paramiko模块安装 在Linux的Term ...
- cf493A
Description Vasya has started watching football games. He has learned that for some fouls the player ...
- hdu 1015 dfs
Problem Description === Op tech briefing, 2002/11/02 06:42 CST === "The item is locked in a Kle ...
- 【matlab】matalb生成dll给Cpp用
http://blog.csdn.net/scudz/article/details/13628917 这篇文章写得很好,我跟据这个,操作了一下,发现,好用,精简版总结如下 1. matlab打开一个 ...
- mysql 建立表里某的个字段根据另一字段进行自增长
在设计一些数据表时,我们经常遇到这样一种情况:需要表中的一个字段根据另一字段进行自增长,比如,在数据表中存储玩家的武器信息时,需要存储玩家的武器对应的bagid,这就是一个根据玩家自己的id(玩家id ...
- 基于amoeba实现mysql数据库的读写分离/负载均衡
一.Amoeba的简述:[来自百度百科] Amoeba是一个以MySQL为底层数据存储,并对应用提供MySQL协议接口的proxy.它集中地响应应用的请求,依据用户事先设置的规则,将SQL请 ...
- [RxJS] Transformation operator: buffer, bufferCount, bufferTime
This lesson will teach you about another horizontal combination operator: buffer and its variants. B ...
- HTML5游戏开发技术基础整理
随着HTML5标准终于敲定.HTML5将有望成为游戏开发领域的的热门平台. HTML5游戏能够执行于包含iPhone系列和iPad系列在内的计算机.智能手机以及平板电脑上,是眼下跨平台应用开发的最佳实 ...
- JSP-标准动作标记
JSP标准动作标记 在客户请求JSP页面时,JSP动作利用XML语法格式的标记来控制Servlet引擎的行为.利用JSP动作可以动态地插入文件.重用JavaBean组件.把用户重定向到另外的页面.为J ...