专栏首页Java 温故知新「JAVA」初识Java平台、以及Java的跨平台实现原理

「JAVA」初识Java平台、以及Java的跨平台实现原理

詹姆斯.高斯林-公认的java之父

詹姆斯.高斯林-公认的java之父,现任职于亚马逊云计算。

一、什么是Java

Java 是强静态类型的编程语言,是`Sun Microsystems`公司(简称sun,已于2009年被oracle收购)于1995年推出的高级程序设计语言;此类型的语言还有C#;Java可运行于Windows、Mac OSX、Linux、Solaris及其他多种类UNIX系统(如BSD)。

从1995年发布1.0版本至今,已过24个年头,目前最新版是 Java 13(更新太快了)。可以说是一门老牌编程语言了,可他的势头依然很猛,常年位居世界编程语言排行榜首(tiobe排行榜),而且基于java构建的技术生态几乎渗透到了各个领域,如大数据,云计算,安卓,物联网...发展至今,Java 已经不仅仅是一门语言了,更像是一个语言平台,一个标准。

tiobe 排行榜

基于JVM(Java 虚拟机)运行的语言更是不止Java一门,还有Kotlin、Scala、Groovy、Clojure等语言,这些语言又在安卓、大数据、云计算等领域大放异彩。

二、Java 三大平台及其应用场景

JavaSE(Java Platform Standard Edition):Java 标准平台,所有的Java项目都需要JavaSE的支持,包括JavaEE 和JavaME亦是如此;如JavaWeb、Android、Java桌面软件,JavaFX 等;

JavaEE(Java Platform Enterprise Edition):Java企业平台,用于开发和部署可移植、健壮、可拓展和安全稳定的服务器端Java应用程序,如企业的应用系统ERP、CRM、OA,电信系统、银行系统等;Java EE是基于Java SE封装了Web服务、组件模型、管理和通信API,实现企业级的大型应用,如阿里巴巴的大部分应用都是基于Java开发的,不仅如此,阿里巴巴也基于Java封装了众多的Java中间件;

JavaME(Java Platform Micro Edition): Java微型平台,也叫K-JAVA,用于开发移动设备、嵌入式设备(比如手机、PDA、电视机顶盒和打印机等,Java原本就是为了电视机顶盒而设计的),不过现在市场份额并不是很高了;

三、跨平台实现

Java源代码需要编译为.class字节码文件(在安卓中是.dex文件)才能被JVM执行,Java号称一次编写,到处运行,也就是可以跨平台运行,那他是如何实现的呢,请看下图:

java 跨平台实现

四、JDK 介绍

jdk 目录结构
  • bin: Java的可执行命令(也称呼为工具),比如编译命令javac, 运行命令java;
  • db: 用于Java测试的数据库derby;
  • include:C/C++语言头文件,支持Java本地接口(JNI)和Java虚拟机调试程序接口;
  • jre:Java的运行环境,里面有JVM(java虚拟机);
  • lib:Java语言的核心库;
  • src.zip:Java的源代码;
  • javafx-src.zip:javafx源码;
jdk 结构体系

五、Hello World

Java Hello World

完结。老夫虽不正经,但老夫一身的才华

本文分享自微信公众号 - 老夫不正经(laofu_ss),作者:老夫不正经

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 「GraalVM」支持多语言运行,能将源代码直接编译为本地二进制文件

    GraalVM是甲骨文(Oracle)开发的支持多语言,采用一个单一的虚拟机来对不同语言提供支持的高性能运行时。

    老夫编程说
  • 「JAVA」Java基础之堆、栈、方法区、类加载器——JVM内存模型分析

    相信正经,或者不正经的程序员小伙伴们,亦或者非开发小伙伴,多多少少都听说过JVM(Java虚拟机),Java程序的运行支持;同时,也是高级程序员的必须掌握的底层...

    老夫编程说
  • 「JAVA」运行时异常、编译时异常、自定义异常,通过案例实践转译和异常链

    从事Java开发的小伙伴对于“异常”应该不陌生,因为每天都会遇到不少异常,或捕获,或抛出。那究竟什么是异常?异常即非正常的,不同于平常、一般化的情况。

    老夫编程说
  • Java核心技术 卷I 基础知识 学习笔记(1)

    简单性、面向对象、分布式、健壮性、安全性、体系结构中立、可移植性、解释型、高性能、多线程、动态性。

  • 25 个喜欢 Java 的理由

    JetBrains 喜欢所有编程语言,还有所有开发者!2020 年 5 月,Java 迎来了 25 岁生日!因此我们想做点特别的事情,想想我们喜欢 Java 和...

    用户2781897
  • 开发有效地 Java微服务需要Effective Java

    编写好的软件需要使用正确的工具。选择正确的框架、库和设计“聪明”的系统。因为有这些东西需要学习和担心,很容易忘记另外一件非常重要的事情:明智地选择使用编程语言。...

    程序你好
  • ​ 之前写过很多次关于Java学习指南、Java技术路线图的文章。

    之前写过很多次关于Java学习指南、Java技术路线图的文章。但是总还是有小伙伴来问我,Java怎么学,项目怎么做,资源怎么找,真是让人头秃。

    黄小斜
  • 25 年前 Java 诞生,把你对她的热爱大声说出来好吗

    前几天 520 的表白狗粮小伙伴们吃的怎样了呢,我猜有的同学已经成为别人口中撒狗粮的那位;有的可能真的是吃了一整天的狗粮;还有的正在发愤图强,力争给大家来一口大...

    程序员小跃
  • 超硬核Java学习路线图+学习资源+实战项目汇总,看完以后不用再问我怎么学Java了!

    于是这次黄小斜决定来一波狠的,把所有这些内容都整理起来,做成一份非常硬核的Java学习指南+路线图,一篇文章搞定Java学习,360度无死角(可能)如果你们喜欢...

    黄小斜
  • 荐书在精不在多,推荐一份夯实Java基础的必备书单!

    每一年的年初都是买书学习热情高涨的时候,虽然不知道你们是让这些书吃灰还是真的会好好阅读,但是有一些书籍,我还是希望能够推荐给你们。

    黄小斜

扫码关注云+社区

领取腾讯云代金券