基于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. Javascript数组,String对象,Math对象,Date对象,正则表达式

    标题栏的滚动<html><head><title>山西众创金融</title></head>function init(){ //1.拿到标 ...

  2. 导出EXCEL数据时防止数值变科学计数的办法

    网上有很多说法,最简单直接正确的做法是判断一下是否为数值以及长度,然后给单元格加上以下CSS即可: mso-generic-font-family:auto;   mso-font-charset:1 ...

  3. jedis应用实例

    最近将redis整合到项目中,将redis作为cache使用,未来进一步作为消息推送使用.我通过jedis和spring配置实现操作redis. spring配置 <!-- redis配置 -- ...

  4. Java strictfp关键字

    保证浮点运算的结果不受平台的影响,在任何平台上,使用统一的标准进行浮点运算,提高程序的可移植性(毕竟结果更可控,更精确),相应的,以降低性能为代价 Strictfp ensures that you ...

  5. FxCop

    下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=8279 FxCop是一个代码分析工具,和StyleCop(代码规范)一起配合 ...

  6. ThinkPHP函数详解:F方法

    我们已经了解了ThinkPHP中的S方法的用法,F方法其实是S方法的一个子集功能,仅用于简单数据缓存,并且只能支持文件形式,不支持缓存有效期,因为采用的是PHP返回方式,所以其效率较S方法较高,因此我 ...

  7. 自定义控件学习 Day44

    自定义控件学习 Day44 onMeasure 测量控件的宽高. onLayout 设置位置 onDarw 绘制控件 问题堆栈 1. 事件监听传递 最外层获取到控件,根据事件事件传递机制,返回值fal ...

  8. 向SQL2008R2导入Acess、excel数据

    一:导入Access数据 1.在sql2008查询分析 器中输入如下查询语句能查出access中的数据 SELECT * FROM OpenDataSource( 'Microsoft.Jet.OLE ...

  9. C#面向对象的一些东西

    最近在复习C#面向对象,也就是说常说的3大特性:封装.继承和多态.首先说一下封装,其实封装最大的目的也是为了实现代码的解耦和重用.代码也是安全的(对外它隐藏了具体的实现,就好比我们拿个遥控器就能操作电 ...

  10. xcode插件安装完之后无法使用问题解决

    1.打开xcode插件所在的目录: 例如: ~/wangdi/library/Application Support/Developer/Shared/Xcode/Plug-ins /Users/su ...