基于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. linux 清空文件内容命令

    清空文件内容命令 $ echo "" >log.log > 是重写,覆盖式 >>是尾部追加

  2. 触摸与手势学习-swift

    触摸是一个UITouch对象,该对象放在一个UIEvent中,每个UIEvent包含一个或多个UITouch对象,每个UITouch对象对应一个手指.系统将UIEvent发送到应用程序上,最后应用程序 ...

  3. JavaScript实现回到顶部

    HTML页面使用一个a标签,href内填写JavaScript:;以阻止默认行为,在学习实例的时候添加一个大的div来充实页面. demo: <a href="javascript:; ...

  4. Eclipse启动Tomcat访问不了首页

    Eclipse开发web项目与myEclipse不同: 启动服务器后访问 http:localhost:8080 找不到服务器 想要访问Tomcat首页只需修改Tomcat配置 进入Eclipse双击 ...

  5. visio篇章--1

    因为要做需求规格说明书的需要,所以学着用visio.发现visio中其实有很多东西的.我昨晚是用它来画ER图.不画不知道,花了之后才发现有很多窍门在里面.不说废话.我列举一下应该要的东西 1.百度链接 ...

  6. 20160324 javaweb 之request

    package com.dzq.servlet; import java.io.IOException; import javax.servlet.ServletException; import j ...

  7. CSS3中的transform

    CSS3 转换,我们能够对元素进行移动.缩放.转动.拉长或拉伸. transform 在2D里主要是4个方法.除了rotate 其他都是接受x y值 translate skew rotate sca ...

  8. Druid 简单介绍

    官方网址:http://code.alibabatech.com/wiki/display/Druid/Home 1.什么是Druid Druid首先是一个数据库连接池.Druid是目前最好的数据库连 ...

  9. 无责任共享 Coursera、Udacity 等课程视频

    本文转载自网络,原作者不详. (本文是用 markdown 写的,访问 https://www.zybuluo.com/illuz/note/71868 获得更佳体验) 程序语言 interactiv ...

  10. (转)IOS 学习笔记 2015-03-23 如何获取IOS程序的系统信息

    首页 > 程序开发 > 移动开发 > IOS > 正文 iOS 获取手机的型号,系统版本,软件名称,软件版本 -- 个评论 作者:vipa1888 收藏 我要投稿 网上搜索出来 ...