Java有哪些常用语?Java常用语言汇总

   Java有哪些常用语?不介绍Java 常用语,对Java 的总体介绍就是不完整的。尽管促使Java 诞生的源动力是可移植性和安全性,但在Java 语言最终成型的过程中,其他一些因素也起了重要的作用。接下来,绿茶小编就一一来介绍一下。

  · 简单(Simple)

  · 安全(Secure)

  · 可移植(Portable)

  · 面向对象(Object-oriented)

  · 健壮(Robust)

  · 多线程(Multithreaded)

  · 体系结构中立(Architecture-neutral)

  · 解释执行(Interpreted)

  · 高性能(High performance)

  · 分布式(Distributed)

  · 动态(Dynamic)

  在这些特性中,安全和可移植已经在有很多文章介绍过,本文主要针对其他特性的含义讲解。

  一、简单

  Java 设计目的是让专业程序员觉得既易学又好用。假设你有编程经历,你将不觉得Java 难掌握。如果你已经理解面向对象编程的基本概念,学习Java 将更容易。如果你是一个经验丰富的C++ 程序员,那就最好了,学习Java 简直不费吹灰之力。

  因为Java 承C/C++ 语法和许多C++ 面向对象的特性,大多数程序员在学习Java 时都不会觉得太难。另外,C++中许多容易混淆的概念,或者被Java 弃之不用了,或者以一种更清楚、更易理解的方式实现。

  除了和C/C++ 类似以外,Java 的另外一个属性也使它更容易学习:设计人员努力使Java 中不出现显得让人吃惊的特性。在Java 中,很少明确地告诉你如何才能完成一项特定的任务。

  二、 面向对象

  尽管受到其前辈的影响,但Java 没被设计成兼容其他语言源代码的程序。这允许Java 开发组自由地从零开始。这样做的一个结果是,Java 语言可以更直接、更易用、更实际的接近对象。

  通过对近几十年面向对象软件优点的借鉴,Java 设法在纯进化论者的“任何事物都是一个对象”和实用主义者的“不讨论对象不对象”的论点之间找到了平衡。Java 的对象模型既简单又容易扩展,对于简单数据类型,例如整数,它保持了高性能,但不是对象。


  三、健壮

  万维网上多平台的环境使得它对程序有特别的要求,因为程序必须在许多系统上可靠地执行。这样,在设计Java 时,创建健壮的程序被放到了高度优先考虑的地位。

  为了获得可靠性,Java 在一些关键的地方限制你,强迫你在程序开发过程中及早发现错误。同时,Java 使你不必担心引起编程错误的许多最常见的问题。因为Java 是一种严格的类型语言,它不但在编译时检查代码,而且在运行时也检查代码。事实上,在运行时经常碰到的难以重现的、难以跟踪的许多错误在Java 中几乎是不可能产生的。

  要知道,使程序在不同的运行环境中以可预见的方式运行是Java 的关键特性。

  为更好理解Java 是如何具有健壮性的,让我们考虑使程序失败的两个主要原因:内存管理错误和误操作引起的异常情况(也就是运行时错误)。在传统的编程环境下,内存管理是一项困难、乏味的任务。

  例如,在C/C++ 中,程序员必须手工地分配并且释放所有的动态内存。这有时会导致问题,因为程序员可能忘记释放原来分配的内存,或者释放了其他部分程序正在使用的内存。Java 通过替你管理内存分配和释放,可以从根本上消除这些问题(事实上,释放内存是完全自动的,因为Java 为闲置的对象提供内存垃圾自动收集)。

  在传统的环境下,异常情况可能经常由“被零除”或“文件未找到”这样的情况引起,而我们又必须用既繁多又难以理解的一大堆指令来对它们进行管理。Java 通过提供面向对象的异常处理机制来解决这个问题。一个写得很好的Java 程序,所有的运行时错误都可以并且应该被你的程序自己进行管理。

  四、多线程

  设计Java 的目标之一是为了满足人们对创建交互式网上程序的需要。为此,Java 支持多线程编程,因而你用 Java 编写的应用程序可以同时执行多个任务。

  Java 运行时系统在多线程同步方面具有成熟的解决方案,这使你能够创建出运行平稳的交互式系统。Java 的多线程机制非常好用,因而你只需关注程序细节的实现,不用担心后台的多任务系统。

  五、结构中立

  Java 设计者考虑的一个主要问题是程序代码的持久性和可移植性。程序员面临的一个主要问题是,不能保证今天编写的程序明天能否在同一台机器上顺利运行。

  操作系统升级、处理器升级以及核心系统资源的变化,都可能导致程序无法继续运行。Java 设计者对这个问题做过多种尝试,Java 虚拟机(JVM )就是试图解决这个问题的。他们的目标是“只要写一次程序,在任何地方、任何时间该程序永远都能运行”。在很大程度上,Java 实现了这个目标。

  六、解释性和高性能

  前面已提到,通过把程序编译为Java 字节码这样一个中间过程,Java 可以产生跨平台运行的程序。字节码可以在提供Java 虚拟机(JVM )的任何一种系统上被解释执行。

  早先的许多尝试解决跨平台的方案对性能要求都很高。其他解释执行的语言系统,如BASIC,Tcl,PERL 都有无法克服的性能缺陷。然而,Java 却可以在非常低档的CPU 上顺利运行。

  前面已解释过,Java 确实是一种解释性语言,Java 的字节码经过仔细设计,因而很容易便能使用JIT 编译技术将字节码直接转换成高性能的本机代码。Java 运行时系统在提供这个特性的同时仍具有平台独立性,因而“高效且跨平台”对Java 来说不再矛盾。

  七、分布式

  Java 为Internet 的分布式环境而设计,因为它处理TCP/IP 协议。事实上,通过URL 地址存取资源与直接存取一个文件的差别是不太大的。

  Java 原来的版本(Oak) 包括了内置的地址空格消息传递(intra-address-space) 特性。这允许位于两台不同的计算机上的对象可以远程地执行过程。Java 最近发布了叫做远程方法调用(Remote Method Invocation ,RMI )的软件包,这个特性使客户机/服务器编程达到了无与伦比的抽象级。

  八、动态

  Java 程序带有多种的运行时类型信息,用于在运行时校验和解决对象访问问题。这使得在一种安全、有效的方式下动态地连接代码成为可能,对小应用程序环境的健壮性也十分重要,因为在运行时系统中,字节码内的小段程序可以动态地被更新。

  绿茶小编猜你还喜欢:

  Java编程时节省内存技巧:提高工作效率

  Java新手入门教程:新手必须掌握的30条Java基本概念

时间: 2024-10-15 06:11:24

Java有哪些常用语?Java常用语言汇总的相关文章

Java程序员快速入门Go语言

这篇文章帮助Java程序员快速入门Go语言. 转载至 开源中国社区. http://www.oschina.net 本文将以一个有代表性的例子为开始,以此让Java程序员对Go语言有个初步认识,随后将详细的描述Go语言的各个构成模块,最后以一个例子来讲解Go语言与Java语言的不同点.   先来认识堆栈(例子) 为了满足大家的好奇心,我们将开始于一个麻雀虽小但五脏内全的例子,这个例子将是Stack.java的Go语言版本. 01 //实现堆栈的包集合 02 package collection

讲解Java中的基础类库和语言包的使用_java

Java基础类库 Java 的类库是 Java 语言提供的已经实现的标准类的集合,是 Java 编程的 API(Application Program Interface),它可以帮助开发者方便.快捷地开发 Java 程序.这些类根据实现的功能不同,可以划分为不同的集合,每个集合组成一个包,称为类库.Java 类库中大部分都是由Sun 公司提供的,这些类库称为基础类库. Java 语言中提供了大量的类库共程序开发者来使用,了解类库的结构可以帮助开发者节省大量的编程时间,而且能够使编写的程序更简单

整理Java编程中字符串的常用操作方法_java

字符一般情况下,当我们处理字符时,我们用原始数据类型 char. 示例 char ch = 'a'; // Unicode for uppercase Greek omega character char uniChar = '\u039A'; // an array of chars char[] charArray ={ 'a', 'b', 'c', 'd', 'e' }; 然而在开发中,我们会遇到需要使用对象而不是原始数据类型的情况.为了达到这个需求.Java 为原始数据类型 char 提

Java基础:初学者Java语言入门精典文章

初学 Java总有它的千般好处使你选择它,但这些随便翻翻书或在网上逛一圈就能找到答案.在本文中,笔者把自己学习Java的一些切身体会和过程写出来,供初学者做个参考. 我在学习Java的过程中主要围绕以下几个方面来学习: 1.时刻提醒自己Java是一种OOP语言工具,而不仅仅是编码,只有这样才能总体把握和运用Java. 2.在学习的过程中,最好能够了解Java的底层机制,而不是仅仅停留在表层,不是抄书上的例子运行出结果就可以.要注意,即便对一个简单的例子也要有耐心去琢磨.调试.改动. 3.在学习的

Java.next:下一代的JVM语言

本文是ThoughtWorks公司架构师Neal Ford在IBM developerWorks系列文章java.next中的第一篇,其基于Groovy,Scala和Clojure,讲述了多语言编程的重要性,并对静态类型与动态类型,函数式编程与命令式编程进行了比较.(2013.02.06最后更新) 在我与Martin Fowler曾经合作呈现的一次主题演讲中,他作出了一个有洞察性的观点: Java的遗产将是平台,而不是程序设计语言. Java技术的原始工程师们作出了一个明智的决定,就是将编程语言

Java是最适合初学者的语言吗?

这些年讨论过很多入门型的编程语言和它们的优点,之所以如此是因为在软件开发中要深入了解和学习相当困难,有太多语言之外的材料需要去学习,也要竭尽全力来搞清楚那些抽象的语法细节. Java之父James Gosling最近接受采访做了一个简短的剪辑,谈到Java是一流的开发语言.不得不承认,我们也多次这样感叹:Java实在是太好懂的语言,可以让我们轻易的接受开发中的OOP.坦率的说,Java可能是一个开发新手所能上手的最好开端.虽然时代在变化-- 由Java开始,Ruby和Python让我们看到了更多

基于Java中Math类的常用函数总结_java

Java中比较常用的几个数学公式的总结: //取整,返回小于目标函数的最大整数,如下将会返回-2 Math.floor(-1.8): //取整,返回发育目标数的最小整数 Math.ceil() //四舍五入取整 Math.round() //计算平方根 Math.sqrt() //计算立方根 Math.cbrt() //返回欧拉数e的n次幂 Math.exp(3); //计算乘方,下面是计算3的2次方 Math.pow(3,2); //计算自然对数 Math.log(); //计算绝对值 Mat

代码-如何在JAVA中打印显示出R语言算法的结果

问题描述 如何在JAVA中打印显示出R语言算法的结果 如题:我需要在Java上调用R的代码,R代码如下:data.frame(obs = c(1 2 3) treat = c('A' 'B' 'A') weight = c(2.3 NA 9)).R上显示结果如下: obs treat weight1 1 A 2.32 2 B NA3 3 A 9.0 怎么将这个结果 在Java中打印出来啊.. 求大神. 解决方案 http://blog.csdn.net/hwssg/article/details

java NIO中的Reactor相关知识汇总 (转)

一.引子     nio是java的IO框架里边十分重要的一部分内容,其最核心的就是提供了非阻塞IO的处理方式,最典型的应用场景就是处理网络连接.很多同学提起nio都能说起一二,但是细究其背后的原理.思想往往就开始背书,说来说去都是那么几句,其中不少人并不见的真的很理解.本人之前就属于此类,看了很多书和博客,但是大多数都只是讲了三件套和怎么使用,很少会很细致的讲背后的思想,那本次我们就来扒一扒吧.     很多博客描述nio都是这么说的:基于Reactor模式实现的多路非阻塞高性能的网络IO.那