注册通行证 用户名 密码
  • 文章投稿
  • 博客
  • 论坛
  • 设为首页
  • 加入收藏
jztop.com网络技术
  • 首页
  • | iT新闻
  • | 操作系统
  • | 组网建网
  • | 网络安全
  • | 程序开发
  • | 办公一族
  • | 工具软件
  • | 网页制作
  • | 多媒体制作
  • | 网吧技术
  • | 服务器
  • | 专题教程
Vista | 软件评测 | 系统备份 | 优化 | 进程 | 聊天 | 病毒 | Linux | 黑客 | 防火墙 | 数据库 | Web开发 | Java | Word | 游戏 | 32位开发 | 移动开发
当前位置:首页 > 程序开发 > Java 内容正文:Java常用语

Java常用语

发布时间:2006-05-20 22:11:39 来源: 网友评论 0 条

不介绍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命令行简介
讨论区
查看
已有 0 位对此新闻感兴趣的网友发表了看法
匿名发表
注册通行证 登陆
图文阅读推荐
Java控件设计入门
Java控件设计入门
推荐阅讯
  • Java列表对象的性能分析
  • 使用Java进行Web开发的随想
  • J2ME移动2D图形开发快速入门
  • EJB 3.0是Hibernate的克隆吗?
  • Java:Struts入门初步知识
  • 通过实例论证J2ME的事件传输机制
  • 浅析Eclipse建模框架(EMF)及其动态能力
  • 浅析Java语言中两种异常的差别
  • 深入研究Servlet线程安全性问题
  • 利用Java Applet编程实现动画特技(1)
阅读排行
  • 1.Java连接SQL Server 2000
  • 2.Java文件操作详解
  • 3.Java控件设计入门
  • 4.Java操作Excel电子表格
  • 5.Java: JNI完全手册
  • 6.Java命令行简介
  • 7.开发J2EE应用应遵循的几点原则
  • 8.Servlet与Javabean配置
  • 9.Java规则引擎与其API应用详解
  • 10.CLASSPATH详解
专题教程
  • 大话G游 专题:手机病毒揭密
  • ARP攻击防范与解决方案 路由故障处理手册
  • Picasa中文版_Picasa教程 专题:清除流氓软件
  • Firefox专题 seo搜索引擎优化专区
  • 重装Windows必知的事情 装机之必备软件大行动
病毒专杀栏
  • 杀毒软件反被病毒杀 连"救命"都不能喊
  • 金山ARP防火墙
  • 还原卡神话破灭“机器狗”病毒来势汹汹
  • cctv经济半小时:你的手机现在安全吗?
  • 新挂马方式开始流行 ARP挂马称雄局域网
  • 木马和病毒清除的通用解法
  • IP地址不再冲突 查找ARP攻击者元凶
  • 教你几招识别和防御Web网页木马
  • 分析:封杀BT只是暂时的止痛药
  • QQ爆危险漏洞,“QQ游戏邀请大盗”邀请你玩病
关于我们 | 诚聘英才 | 联系我们 | 版权声明 | 网站大事 | 网站地图 | 意见建议
CopyRight 2005-2007 Jztop.Com 版权所有 未经许可 请勿转载