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#多用于业务系统的开发 ...
随机推荐
- Word 操作
1.出文件,最后一页是附件.最后一页的页码不想要.如何删除?用的是 office word 2010版本,跟07 03版本界面不一样. 在最后一页的最前面插入分节符:下一页 ,编辑页脚.让页脚“取消链 ...
- Android studio 百度地图开发(3)地图导航
Android studio 百度地图开发(3)地图导航 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...
- centos 7 安装 mail
yum install -y sendmail 将下面内容粘贴到/etc/mail.rc中 set ssl-verify=ignore set nss-config-dir=/root/.certs ...
- Mysql:1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'错误解决
select distinct b.sale_count from product_sale b where b.pro_id in (select a.pro_id from product a L ...
- java心跳发送
java心跳发送: 大家都知道.如果你在互联网公司,并且开发的是产品那你一定接触不到.心跳机制.心跳包 那什么是心跳机制呢? 心跳机制就是定时发送一个自定义的结构体(心跳包).确保连接的有效的机制. ...
- java代码实现目录结构
今天用java代码来实现.像我们电脑盘符那样的目录结构.在代码开始之前首先.介绍一下.用.java代码实现目录的思想. 第一步:完成基础的.大家想.我们是如何获取文件的.是不是用File类,直接就获取 ...
- 读《《图解TCP-IP》》有感
读<<图解TCP/IP>>有感 TCP/IP 近期几天读完<<图解TCP/IP>>,收获蛮多,记得上学时读stevens的<<TCP/IP具 ...
- css3中font-face属性的用法详解
@font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中,随着@font-face模块的出现,我们在Web的开发中使用字体不怕只能使用Web安全字体,你们当中或许有许 ...
- maven;cargo;仓库
[说明]又到晚上九点了,不得不加快进度,首先就是日报.今天上午在服务器搭建maven,下午完成了一个maven web项目,晚上改错找maven配置问题(因为想装jetty和cargo) 一:今日完成 ...
- 九度OJ 1338:角斗士 (递归、DP)
时间限制:3 秒 内存限制:32 兆 特殊判题:否 提交:213 解决:66 题目描述: 角斗士是古罗马奴隶社会的一种特殊身份的奴隶,他们的职责是在角斗场上进行殊死搏斗,为了人们提供野蛮的娱乐.他们的 ...