基于Java官方指导文档,开展学习

Java是什么

Java 是编程语言,也是一个平台

特性

简单 可移植 面向对象 分布式运算
高性能 健壮 安全 动态 体系结构中立

记忆宫殿:
恋爱是件简单的事,但放到社会体系中(中立体系结构),也就复杂起来
对象异地分布,
移情别恋(可移植)也不奇怪,
要留住恋人,性能力是一方面,
另外,健壮的身材,强大的安全感,也不可或缺

编译与运行

如此,通过 JVM,Java 程序能跨平台运行

附:部分虚拟机,检查性能瓶颈或将频繁使用的代码域转为本地代码,来提高性能,如 Java SE HotSpot at a Glance

Java 平台本质

平台,是程序在其中运行的硬/软件环境

多数平台 = 操作系统 + 底层硬件

Java 平台是纯软件平台,运行在其他基于硬件的平台上

Java 平台 = JVM + API

API 是现有软件元素的集合,能提供许多有用的特性

API被划分为多个相关类和接口的库

这些库,就是

Java 独立于平台

作为平台独立的环境, Java平台会比本地代码稍慢

但编译和虚拟机技术可以降低这种影响

Java可以做什么

  • 开发工具
    涉及编译(javac),运行(java),监视,调试和文档生成(javadoc)

  • 编程接口 API
    提供 Java 编程语言的核心功能

  • 部署
    JDK 按标准机制,将应用展现给终端用户
    如:ava Web Start 和 Java Plug-In

  • 用户接口工具集
    借助 JavaFX,Swing 和 Java 2D,Java 能够创建复杂的图形用户接口

  • 集成库
    通过Java RMI-IIOP Technology协议,集成库,如 Java IDL API, JDBC API, JNDI API, Java RMI, Java Remote Method Invocation,能够访问数据库,并操纵远程对象

Java 带来的益处

  • 快速上手
    面向对象,尤其适合已学过C和C++的程序员

  • 代码量更小
    少量代码即可实现其他语言大量代码的功能

  • 代码更优秀
    Java鼓励优良的编程实践,另外,Java垃圾回收机制能避免内存泄露
    同时,可复用其他代码,但仅带来少量bug

  • 加快开发

  • 避免对平台的依赖

  • 一次编写,处处运行

  • 更简单的软件分发

关于Java(介绍)的更多相关文章

  1. JAVA学习(一):Java介绍及其平台、开发环境的配置与搭建

    Java介绍及其平台.开发环境的配置与搭建 1.Java的介绍 Java是一种面向对象的编程语言,具有跨平台.可移植.分布式.简单.可扩展等诸多特性.Java能够进行桌面应用.Web应用.分布式系统及 ...

  2. RabbitMQ In JAVA 介绍及使用

    介绍: RabbitMQ是开源的消息中间件,它是轻量级的,支持多种消息传递协议,可以部署在分布式和联合配置中,以满足高级别.高可用性需求.并且可在许多操作系统和云环境上运行,并为大多数流行语言提供了广 ...

  3. Java 介绍比较全面的一遍文章

    Java简介 Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称.用Java实现的HotJava浏览器(支持Java ...

  4. Java介绍(重要特点)

    Java语言平台版本 JavaSE标准版本,是JavaME 和Java EE的基础,能够开放基本桌面程序. JavaME 一句话,安卓开发. JavaEE 一句话,网页开发. Java重要特性(跨平台 ...

  5. Java学习笔记(一) java介绍

    编程语言分为:编译型语言和解释型语言. 编译型语言需要经过特定编译器通过一次性编译,成为该特定平台硬件可执行的机器码,可脱离开发环境独立运行,运行效率较高,但是无法跨平台移植. 解释型语言需要经过特定 ...

  6. Java学习3——java介绍

    Java程序运行过程: Java两种核心机制: Java虚拟机(Java Virtual Machine),提供程序运行的解释环境,使Java成为一种与平台无关的语言. Java虚拟机可以理解成一个以 ...

  7. Java基础学习笔记一 Java介绍

    java语言概述 Java是sun公司开发的一门编程语言,目前被Oracle公司收购,编程语言就是用来编写软件的. Java的应用 开发QQ.迅雷程序(桌面应用软件) 淘宝.京东(互联网应用软件) 安 ...

  8. 第一节课:java介绍以及java开发环境的安装

    互联网时代 什么是软件 什么是硬件 什么是操作系统 java是什么? 计算机高级程序语言 java能做什么? 开发软件(网站.app.游戏.应用系统.嵌入式) java对应的职位链(需求->产品 ...

  9. Java学习笔记之——Java介绍

    1.Java体系: JavaSE:标准版,其他两个体系的基础 JavaEE:企业版 JavaME:微型版,适用于消费类型的微型设备 2.Java三大特性:封装.继承.多态 3.Java的特点:面向对象 ...

  10. Java介绍

    Java简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式推 ...

随机推荐

  1. arcgis通过 Python 使用工具 获得结果信息

    通过 Python 使用工具 ArcGIS 10 每个地理处理工具都具有一组固定的参数,这些参数为工具提供执行所需的信息.工具通常具有定义一个或多个数据集的输入参数,这些数据集一般用于生成新的输出数据 ...

  2. Android_EditText

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...

  3. Github + Hexo 搭建博客

    服务加速 brew 加速 http://blog.suconghou.cn/post/homebrew-speedup/ github加速 http://www.selfrebuild.net/201 ...

  4. Javascript,闭包

    js变量的调用 一.全局变量函数调用 var n = 99; function f1() { alert(n); } f1();//99 在函数外部定义的变量,再函数中可以被调用,因为变量n,与f1在 ...

  5. JLabel跟label

  6. NC portal怎么重新开始入门,整个配置过程包括配置一个节点

    有一份文档,之后会上传,暂时不上传

  7. 关于ASPOSE.WORD使用上的一个小问题

    最近实习期间负责了公司某个项目的一个功能模块里面的word导出功能,使用的是ASPOSE.WORD类库,但是经常导出时候会遇到图中的问题,大概意思就是两个表格不能跨在一起,调试了好几次还是没发现具体的 ...

  8. 20151217jquery学习笔记--注册表单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. IEnumerable接口的扩展方法

    /// <summary>/// IEnumerable接口的扩展方法,支持它的实现类是List的情况/// </summary>using System.Collection ...

  10. javascript 中caller,callee,call,apply 的概念[转载]

    在提到上述的概念之前,首先想说说javascript中函数的隐含参数:arguments Arguments : 该对象代表正在执行的函数和调用它的函数的参数. [function.]argument ...