Java 开始

(事先声明:该文章并非完全是我自己的产出,更多的是我个人在看到资料后通过理解并记录下来,作为自己阅读后的一个笔记;我现在试图对自己多年工作中的知识点做一个回顾,希望能融会贯通)

(此文参考<Java核心技术36讲>第一讲)

对Java平台的理解

Java平台分成J2ME(Java 2 Micro Eidtion), J2SE, J2EE。分别对应于不同的应用场景: J2ME主要用于移动平台;J2SE用于桌面应用:如算法交易引擎;J2EE应用于企业平台的建设,比J2SE多了更的组件: 如:servlet, jme, ejb等组件,更多的用于分布式企业应用。

 

普遍来说, Java是面向对象语言,主要特点是:跨平台运行垃圾回收;日常使用到的有JRE 和JDK。JRE是指java运行时环境,包含java类库和jvm,以及一些必要的组件,有JRE就可以运行一个java程序。 JDK是指java开发套件,它包含了JRE,编译器和各种诊断工具。

Java的解释执行: 编写的java源代码,通过编译器javac编译成字节码,然后在运行时,由JVM内嵌的解释器将字节码进行转成本地机器指令。但大多数JVM(包括Oracle JDK提供的),都提供了JIT编译器(动态编译器)-- 在运行时将热点代码编译成本地机器码,这种情况下这些热点代码就是编译执行了。

严格来说,许多语言都有跨平台运行的能力,但Java相对来说比较成熟。程序从源代码到运行的三个阶段:编码 - 编译 - 运行。java的的代码首先会被编译成.class文件,然后再于不同平台上的JVM加载并把该.class文件编译成本地目标机器代码 - 这也是为什么java能跨平台运行的基础。

编写一次到处运行是指在程序编写好时,并不需要考虑不同平台的运行:如使用C/C++编写程序时,有时需要考虑到不同平台的系统接口不同。

 

Java语言的特性

语言: 面向对象;泛型;Lambda;

基础类库:集合 ; IO / NIO; 并发;网络;安全

 

转载于:https://www.cnblogs.com/ddez/p/10633069.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/249279.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java核心技术笔记——第 12 章 反射

转载自&#xff1a;[https://www.cnblogs.com/chanshuyi/p/head_first_of_reflection.html] 12 反射 1. 引入反射 通常情况下&#xff0c;调用一个类的方法的步骤如下&#xff1a; 创建该类的对象。调用该对象的方法。通过这种方式调用方法时&#xff0c;必须要知道类的定义以及…

HTML5知识点汇总

1、HTML5新特性 用于绘画的canvas标签用于媒介回放的video和audio元素对本地离线储存的更好支持新的特殊内容元素&#xff0c;如&#xff1a;article、footer、header、nav、section、aside、hgroup、figure新的表单控件&#xff0c;如&#xff1a;calendar、date、time、emai…

实用网站

https://blog.csdn.net/devcloud/article/details/103121883

网络(图)(数学)

转载于:https://www.cnblogs.com/fengxunling/p/9781575.html

DES加解密时 Given final block not properly padded 的解决方案

事情的经过是这个样子的。。。。。。 先说说问题是怎么出现的。根据客户需求&#xff0c;需要完成一个一键登录的功能&#xff0c;于是我的项目中就诞生了DesUtil&#xff0c;但是经过几百次测试&#xff0c;发现有一个登录直接报错&#xff01;难道又遇到神坑啦&#xff01;&a…

java 算法优化向导

一.什么是数据结构&#xff1f;什么是算法 不必像学生时代深究定义。以一个简单的例子说明。 数据结构&#xff0c;图书馆的书怎么摆列&#xff0c;按照书的类型&#xff0c;作者&#xff0c;出版时间&#xff0c;语言等等放置&#xff0c;这就是数据的结构。 算法&#xff0c…

appium工作原理

Appium原理 面试的时候&#xff0c;被问到appium原理&#xff0c;一点不会&#xff0c;实在尴尬。大家可以直接翻看原作https://blog.csdn.net/jffhy2017/article/details/69220719 appium运行时安装的2个应用&#xff1a;Appium Settings和Unlock。 一、appium加载的过程图解&…

LeetCode 21. Merge Two Sorted Lists

LeetCode 21. Merge Two Sorted Lists 分析 难度&#xff1a;易 题目 Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists. Example: Input: 1->2->4, 1->3->4 Out…

Mac OS X 下 TAR.GZ 方式安装 MySQL

Mac OS X 下 TAR.GZ 方式安装 MySQL 注意: 本篇文章适用与 MySQL 5.6 版本的安装, 但已不再适用 5.7 的安装, 5.7 的安装方式请参见:《Mac OS X 下 TAR.GZ 方式安装 MySQL 5.7》 在 Mac 系统上, 安装 MySQL Server 一般是用 DMG 包在图形化界面下按提示安装, 此外 MySQL 还提供…

快排再改进

快排再改进 #include <iostream> using namespace std;void mySwap(int &a, int &b) {int temp a;a b;b temp; }void insertSort(int a[], int left, int right) {int tmp;int in 0;int out 0;for (out left 1; out < right; out) {tmp a[out];in ou…

【Linux基础】crontab定时命令详解

周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件&#xff0c;这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”&#xff0c;是“cron table”的简写。 一、cron服务  cron是一个linux下 的定时执行工具&a…

5个Vue.js项目的令人敬畏的模板

开发人员查看使用SPA&#xff0c;Webpack&#xff0c;身份验证&#xff0c;GraphQL&#xff0c;文档和测试的Vue开发人员的资源。 你准备开始一个重要的Vue项目吗&#xff1f;为了确保从坚实的基础开始&#xff0c;您可以使用模板&#xff08;也就是样板&#xff0c;骨架&#…

测试多个输入条件的方法

转载于:https://www.cnblogs.com/www-qcdwx-com/p/10641281.html

问题规模

问题规模本身并没有非常精准的定义吧一般都是指运行时间t和输入参数个数n的关系用O(n)表示比如max([x])就是O(n)而冒泡排序则是O(n^2)

SSM+mybatis单元测试

初学SSMmybatis单元测试遇到的问题&#xff0c;dao注入后为nullDao层注入失败&#xff0c;查看后&#xff0c;发现注解都写的无误&#xff0c;经朋友的指点&#xff0c;在测试类上加了一句“RunWith(SpringJUnit4ClassRunner.class) ContextConfiguration(locations{“classpat…

Sublime text 2/3 中 Package Control 的安装与使用方法

Package Control 插件是一个方便 Sublime text 管理插件的插件&#xff0c;但因为 Sublime Text 3 更新了 Python 的函数&#xff0c;API不同了&#xff0c;导致基于 Python 开发的插件很多都不能工作&#xff0c;Package Control 原来的安装方法都失效了。 网上有2种使用 Git…

接口测试

集成&#xff1a; 接口&#xff0c;代码级&#xff0c;service层 unit-》service-》UI 接口测试和界面没有任何关系 A->B  数据流向 理论 我们学过&#xff0c;集成测试主要测接口&#xff0c;通过学习集成测试&#xff0c;我们发现是把单元测试通过后的方法直接需要对接的…

React-Router ---withRouter

import React from react import { withRouter } from react-router const Hello (props) > { return ( <div><button onClick{ () > props.history.push(/about) }>Hello</button></div> ) } const WithRouterHello withRouter(Hello);//也可…

vue从入门到精通之进阶篇(一)vue-router基础

路由原理 传统开发方式 url改变后 立刻发起请求&#xff0c;响应整个页面&#xff0c;渲染整个页面SPA 锚点值改变后 不会发起请求,发起ajax请求,局部改变页面数据 页面不跳转 用户体验更好 SPA single page application(单页应用程序)前端路由 锚点值监视ajax获取动态数据…

自动计算请假工时 排除周六周日

/*** 请假工时计算* starttime 开始时间 "2019-03-28 16:02", endtime 结束时间 "2019-03-29 16:02"*/ function leaveTime(starttime, endtime) {var start new Date(starttime); //start Thu Mar 28 2019 16:02:00 GMT0800 (中国标准时间)var end new…