java-从这里开始认识
《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(窗口、事件)
java-从这里开始认识的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- Java多线程基础学习(二)
9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...
- Java多线程基础学习(一)
1. 创建线程 1.1 通过构造函数:public Thread(Runnable target, String name){} 或:public Thread(Runnable target ...
- c#与java的区别
经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...
随机推荐
- 教你用squid做CDN把公司做到上市
我们都知道CDN(内容分发网络)是用来给网站加速用的,通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络的“边缘”,使用户可以就近取得所需的内容,以提高用户访问网站 ...
- POJ 3252 Round Numbers 数学题解
Description The cows, as you know, have no fingers or thumbs and thus are unable to play Scissors, P ...
- 基于 ZooKeeper 搭建 Hadoop 高可用集群
一.高可用简介 二.集群规划 三.前置条件 四.集群配置 五.启动集群 六.查看集群 七.集群的二次启动 一.高可用简介 Hadoop 高可用 (High Availability) 分为 HDFS ...
- Apache + Tomcat集群 + 负载均衡
Part I: 取经处: http://www.ramkitech.com/2012/10/tomcat-clustering-series-simple-load.html http://blog ...
- IDEA 去掉 ALT + / 自动补全
取消掉Alt + / 自动补全 setting -> keymap -> main menu -> code -> completion -> cyclic Expand ...
- 请求SQL数据是存在<null>,的解决方法
删除字典中的null 我们在处理服务器传过来的数据过程中,如果数据中出现null,我们是没法进行本地持久化处理的.在使用NSUserDaults保存本地时,如果其中一个字段的value为NULL值,就 ...
- 读书笔记-HBase in Action-第三部分应用-(1)OpenTSDB
OpenTSDB是基于HBase的开源监控系统,能够支持上万规模集群监控和上亿数据点採集. 当中TSDB代表Time Series Database,OpenTSDB在时间序列数据的存储和查询上都做了 ...
- 安装PyTorch 0.4.0
https://blog.csdn.net/sunqiande88/article/details/80085569 https://blog.csdn.net/xiangxianghehe/arti ...
- Pell方程(求形如x*x-d*y*y=1的通解。)
佩尔方程x*x-d*y*y=1,当d不为完全平方数时,有无数个解,并且知道一个解可以推其他解. 如果d为完全平方数时,可知佩尔方程无解. 假设(x0,y0)是最小正整数解. 则: xn=xn-1*x0 ...
- H - Funny Car Racing
H - Funny Car Racing Time Limit:1000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Desc ...