zoukankan      html  css  js  c++  java
  • 一.Java技术现象

    似乎到处都在谈论Java技术,那么Java究竟是什么呢?接下去的文章将讲解Java是怎样的一种语言和技术平台,并且会告诉你Java能用来做什么。

    关于Java

    Java既是一种语言也是一个平台。

    Java语言

    Java是一种高级语言,它具有以下几个特征:
    简单 面向对象 分布式 多线程 动态 架构中立 便携 高性能 强大 安全

    每一个关键字的具体解释可以看James Gosling和Henry McGilton写的白皮书The Java Language Environment

    在Java语言里,所有代码是首先写在一个以.java结尾的文本文件中,那些源文件随后被Java编译器编程成.class文件,一个.class文件不包含本地码,它放的是字节码,一种Java虚拟机的机器语言, Java启动器会启动一个虚拟机实例去运行你的应用。

    An overview of the software development process.

    因为Java虚拟机能运行在多个不同的操作系统上,同一个.class文件可以在Windows、Solaris、Linux和Mac OS上使用。有些虚拟机比如HotSpot在运行时会执行额外的步骤去提升性能,它包含多个任务,包括找到性能瓶颈和把热点代码编译成本地机器码等。

    ![Through the Java VM, the same application is capable of running on multiple platforms.

    ](https://docs.oracle.com/javase/tutorial/figures/getStarted/helloWorld.gif)

    Java平台

    平台是一个程序运行所依赖的硬件或软件环境。我们已经提到了一些最受欢迎的平台,如Microsoft Windows,Linux,Solaris OS和Mac OS。大多数平台可以描述为操作系统和底层硬件的组合。Java平台和那些流行的平台有点不太一样,它是一个运行在硬件平台上的纯软件平台。

    Java平台包含两个部分:

    • Java虚拟机
    • Java API

    刚才已经介绍了Java虚拟机,它是Java平台的基础,并移植到各种硬件平台上。

    API是一个现成的软件组件,它提供了许多有用的功能。它被分类到各种相关类和接口的库中,这些库被称为** 包 ** ,下一个章节“Java能做什么”重点介绍了API提供的一些功能。

    The API and Java Virtual Machine insulate the program from the underlying hardware.

    作为一个平台独立的环境,Java平台可能比本机代码稍微慢一点,但是,编译器和虚拟机技术的使性能接近本地代码,而不影响移植性。

    Java能做什么

    通用的高级Java编程语言是一个功能强大的软件平台。每个全实现的Java平台具有以下特性:

    • 开发工具:开发工具提供了编译,运行,监视,调试和记录应用程序所需的一切。作为一名新开发人员,你将使用的主要工具是javac编译器,java启动器和javadoc文档工具。
    • API:API提供了Java语言的核心功能,它提供了各种有用的类,你可以在自己的应用中使用它们。它涵盖了从基本对象到网络和安全性,XML生成和数据库访问等所有内容。核心API非常大,要了解它包含的内容,请查看Java平台标准版8文档
    • 部署工具:JDK软件提供标准机制,例如Java Web Start软件和Java Plug-In软件,用于将应用程序部署到最终用户。
    • 用户界面工具包:JavaFX,Swing和Java 2D工具包使创建复杂的图形用户界面(GUI)成为可能。
    • 集成库:集成库,例如Java IDL API,JDBC API,Java命名和目录接口(JNDI)API,Java RMI和Java远程方法,通过Internet调用Inter-ORB协议技术(Java RMI-IIOP技术)支持数据库访问和远程对象的操作。

    Java将怎样改变我的生活

    如果你学习Java编程语言,我们不能保证你的名声,财富甚至是工作。尽管如此,它可能会使您的程序更好,并且比其他语言需要更少的工作量。我们相信Java技术将帮助你通过以下几点:

    • 快速入门
    • 写更少的代码
    • 写更好的代码
    • 更快地开发项目
    • 避免平台依赖
    • 一次编写,到处运行
    • 更容易地开发分布式软件
    如果您觉得本文对你有用,不妨帮忙点个赞,或者在评论里留言交流,欢迎您持续关注我的博客^_^
  • 相关阅读:
    HttpClient-----待补充
    JDK8的新特性
    关于日期转换的知识点(SimpleDateFormat)
    mybatis中的增删改查操作
    mybatis的快速入门
    018 HDFS中,namenode与datanode的交互
    Unit的各种断言
    分组数据
    Javassist学习总结
    hibernate Validator 6.X 的学习,bean的约束(字段,get方法上的验证)
  • 原文地址:https://www.cnblogs.com/muxuanchan/p/10326756.html
Copyright © 2011-2022 走看看