SUN JAVA认证介绍

合集下载

JAVA程序员就业前景

JAVA程序员就业前景

所有IT专业人士需要的一个最基本的能力便是对他们的基本技术技能进行深度和广度的拓展。如果用马斯洛的需求层次来比喻,那么这种能力应该属于食物和水的层次,你必须有这些才能满足基本的生存。上课、阅读文章、研究产品,参加一个专业性质的组织,你需要掌握你正在使用的技术领域的所有信息,而且你还需要有实践机会去应用这些知识。
Java程序员是美国SUN公司国际认证的程序员,她是目前全球最受重视、最受欢迎的程序员资格认证之一,具备这一认证就可以获得极好的工作机会和丰厚待遇。
Java跨平台等许多特性使之成为当代成长最快的软件产品:它受到了大约150个许可证颁发机构、200所大学和50万开发者的拥戴;1000多个应用程序是用它编写的;有关它的书籍有800余种;Java开发套件的下载次数超过一百万次;Java BEANS? 开发套件的下载次数超过10万次;受到了全球所有主要计算机厂商的支持,而这一切都发生在其发表后的800天内;Java闯入企业计算的心脏正成为大众传媒舆论的推动力量,正在改变企业的计算环境。它通过为因特网商务提供安全和稳健平台的方式改变商业自身。Java计算是各行各业中倍受信赖的企业解决方案。独立于平台的Java计算环境可以降低企业的总成本,缩短产品上市周期,安全地扩展公司的网络。不少国家到中国寻求合作伙伴时,都把能否用Java进行编程作为合作的前提条件。
JAVA程序员就业前景
据有关数据显示,目前,我国对软件人才的需求已达20万,并且以每年20%左右的速度增长。在未来5年内,合格软件人才的需求将远大于供给。2005年,我国软件人才的缺口已达42.5万,其中尤以JAVA人才最为缺乏。
IT管理人才必备的十大能力
作为IT技术人员,相信没有一个人愿意永远在底层编写程序或做简单的系统维护。经过一段时间的技术和经验的积累,很多人都向往更高层的职位,但如何能成为一个专业的IT管理人才,并不是每一个人都清晰、明了。

Sun认证Java程序员SCJP考试科目

Sun认证Java程序员SCJP考试科目

Sun认证Java程序员SCJP考试科目Sun认证Java程序员(SCJP)考试科目通过SUN任何一门专业认证后,考生将收到SunMicrosystems 总公司寄发的资格证书及徽章,并有权将通过Sun认证的标记印在个人名片上,作为个人技术能力的肯定。

以下是店铺整理的关于Sun认证Java程序员(SCJP)考试科目,希望大家认真阅读!考试方式:全英文试题,以电脑作答,在授权的Prometric考试中心参加考试考试科目:Sun Certified Programmer for Java 2 Platform 1.2 考试编号:310-025考试题型:59道选择题及简答题及格标准:答对61%(36题)以上时限:120分钟费用:1500元考试科目:Sun Certified Programmer for Java 2 Platform 1.4 考试编号:310-035考试题型:59道选择题及简答题及格标准:答对61%(36题)以上时限:120分钟费用:1500元考试科目SCJP的四个科目310-025、310-035、310-055、310-056的区别如下:Sun Certified Programmer for Java 2 Platform 1.2(310-025)表明你掌握了JDK1.2的'知识。

Sun Certified Programmer for Java 2 Platform 1.4(310-035)表明你掌握了JDK1.4的知识。

Sun Certified Programmer for the Java 2 Platform, Standard Edition 5.0(310-055)表明你掌握了JDK1.5的知识。

Sun Certified Programmer for the Java 2 Platform, Standard Edition 5.0 Upgrade Exam(310-056)是从JDK1.2或JDK1.4升级到JDK1.5的考试。

java license概念

java license概念

java license概念摘要:1.Java License 的定义和作用2.Java License 与其他开源协议的比较3.Java License 对开发者的影响4.Java License 的未来发展趋势正文:【Java License 的定义和作用】Java License 是Sun Microsystems(现已被甲骨文公司收购)为其Java 编程语言和相关技术制定的一种开源协议。

Java License 允许开发者自由地使用、修改、复制和分发Java 技术,但同时也要求任何修改后的Java 代码必须以Java License 的形式开放源代码。

这使得Java 成为了一个广泛应用于全球的开源编程语言。

【Java License 与其他开源协议的比较】与其他常见的开源协议(如GPL、BSD、MIT 等)相比,Java License 有其独特之处。

首先,Java License 要求任何修改后的Java 代码都必须以Java License 的形式开放源代码,这意味着使用Java License 的开发者需要承担更多的责任。

其次,Java License 允许商业公司将Java 代码用于闭源商业软件的开发,这与GPL 等协议有很大的不同。

最后,Java License 规定,任何使用Java API 的软件都必须遵守Java 兼容性规范,以确保Java 程序的跨平台兼容性。

【Java License 对开发者的影响】Java License 对开发者产生了深远的影响。

一方面,Java License 使得Java 编程语言和相关技术得以迅速传播和普及,为全球开发者提供了一个稳定、高效、跨平台的编程环境。

另一方面,Java License 要求开发者遵守Java 兼容性规范,这既保证了Java 程序的跨平台兼容性,也限制了开发者在Java 代码上的自由度。

【Java License 的未来发展趋势】随着Java 技术的不断发展和演进,Java License 也将面临新的挑战和机遇。

java 统一认证中心搭建原理

java 统一认证中心搭建原理

java 统一认证中心搭建原理Java统一认证中心搭建原理1. 什么是Java统一认证中心?Java统一认证中心,简称SSO(Single Sign-On),是一种基于Web的身份验证和授权机制,它允许用户使用一组登录凭据(如用户名和密码)在多个应用程序中进行身份验证,而无需再次输入凭据。

2. 为什么需要Java统一认证中心?在传统的Web应用架构中,每个应用程序都有自己的用户登录系统,用户需要为每个应用程序单独注册账号并登录使用。

这样做会导致以下问题:•用户需要记忆多个用户名和密码,增加了用户的负担。

•各个应用程序之间的用户信息无法共享和同步。

•用户在切换应用程序时需要反复登录,降低了用户体验。

•应用程序之间的权限验证无法集中管理,安全性较差。

Java统一认证中心的出现解决了以上问题,使用户只需要在认证中心登录一次,即可访问所有已接入认证中心的应用程序。

这样做的优势如下:•用户只需记忆一个用户名和密码,降低了用户的负担。

•各个应用程序可以共享和同步用户信息,提高了用户信息的一致性和准确性。

•用户在切换应用程序时无需重新登录,提升了用户体验。

•权限验证集中管理,提高了系统的安全性。

3. Java统一认证中心的原理Java统一认证中心的实现原理主要包括以下几个步骤:用户认证用户访问一个已接入认证中心的应用程序时,应用程序会将用户重定向到认证中心的登录界面,在登录界面中用户输入用户名和密码进行身份验证。

认证中心验证用户的凭据后,会生成一个具有唯一标识的令牌(Token),并将该令牌返回给应用程序。

令牌管理认证中心生成的令牌包含用户的身份信息以及其他相关信息,如过期时间、权限等。

应用程序在接收到令牌后,会将其保存在本地,通常是使用浏览器的Cookie或者服务器的Session来保存。

令牌验证当用户访问其他已接入认证中心的应用程序时,应用程序会先判断用户是否已经登录(即是否存在有效的令牌)。

如果存在有效的令牌,则应用程序将该令牌发送给认证中心进行验证。

SUN官方JAVA教程

SUN官方JAVA教程
SUN 培训教程-翻译稿 关于本课程本书的主要目标是为你提供有关 Java 应用和 Java applets 的面向对象的程序设计所必需的知识和技能; 并讲授 Java 编程语言句法和面向对象的概念,以及 Java 运行环境的许多特性, 对图形用户界面(GUIs) 、 多线程和网络的支持等。本课程包括了参加 SUN Certified Java Programmer 和 SUN Certified Java Developer 考试所必备的知识。 一、课程概述课程概述 本课程主要包括以下内容: - Java 编程语言句法 应用于 Java 编程语言的面向对象的概念 图形用户界面(GUI)编程 创建 Applet 多线程 网络 本课程首先讨论了 Java 运行环境和 Java 编程语言句法,然后阐述了应用于 Java 编程语言的面向对象 的概念;随着课程的进展还将讨论有关 Java 平台的更先进的特性。 本课程授课对象应具备运用 Java 编程语言或其它语言进行基本语言设计的能力,它是“非程序员 Java 编程”“Java Programming for Non—Programmers” ( ,SL-110)课程的延续。 尽管 Java 编程语言独立于操作系统,但它所产生的图形用户界面(GUI)却可能依赖于执行其代码的 操作系统。本课程中的例题所使用的代码运行于 Solaris TM 操作系统,因而本手册中的图形具备 Motif GUI。 如果将这些代码运行于 Windows 95 操作系统,则可产生 Microsoft Windows 95 GUI。本课程的内容适用于 所有 Java 操作系统端口。 二、课程图每一模块的课程都从一张课程图开始,使学员可掌握自己的学习进度。全课程设置流程图如下所示: The Java Programming Language Basics Getting St

sun认证考试复习备考全攻略

sun认证考试复习备考全攻略

sun认证考试复习备考全攻略2017年sun认证考试复习备考全攻略Java以其平台无关性、面向对象、支持多线程等优点成为越来越多的程序开发人员的新宠,Java技术以其独特的优势在越来越多的领域得以使用和发展。

作为程序开发人员,为了检验对Java掌握的程度,参加Sun公司的Java认证考试是比较好的一个方法。

1.参加培训或自学Java经典课程。

如果有C语言和面向对象的基础,只需自学SL275课程以及JDK1.4API,否则应该参加相应的培训班进行学习。

我对C语言和面向对象都有一些基础,同时又参加了SL275+Weblogic+JSP课程的学习。

2.确定考试版本,明确考查的知识点及知识点的考查难度。

目前SCJP考试有两个版本1.2和1.4,两个版本的比较如下表:其中选择题有两种形式:(1)给出一段代码让选择其运行结果;(2)给出关于某基本概念的一些描述语句让选择正确的答案。

填空题一般是给出一段正确的代码,不提供选择项,而让你填写上运行结果。

两个版本考查的知识点最大的差别在于310-025包含I/O、AWT,且对各个知识点的考查难度相对较容易,而310-035中去掉了I/O和AWT部分的内容,但增加了对Assertion的考查,同时对Wrapperclasses、Collections、hashcode()和equals()考查的难度有所加大。

所以要根据自己的情况选择合适的版本。

我在复习时觉得I/O这一部分的内容较多且不好记忆,就选择了310-035,这个版本较难,也是对自己的一个挑战。

3.根据考查的知识点做练习题。

由于认证考试是以试题的形式来考查对知识点的掌握情况,所以多做题是通过考试的最有效方法之一,通过对SL275课程系统的学习,掌握了有关知识点的基础知识以后,必须通过做题来测试自己对知识点的掌握情况,书中写的有关知识点的内容比较概括,有时自己觉得已经掌握了这部分内容,但做题时可能会出现各式各样的错误,比如在声明main()方法时应为publicstaticvoidmain(Stringargs[]){……},如果在声明时漏写了static,则在编译时可以通过,而运行时会提示出错信息;如果main()中的参数写stringargs[],则在编译时会提示出错,在考试时有类似的题目,故意设一些陷阱,一不小心看似简单的问题却有可能失分。

java项目中常用的认证和授权方式

java项目中常用的认证和授权方式

在Java项目中,认证(Authentication)和授权(Authorization)是非常重要的概念。

认证是确认用户身份的过程,而授权则是确定用户是否具有访问特定资源的权限。

针对这个主题,我将从深度和广度的角度进行全面评估,以便撰写一篇有价值的文章,帮助您更深入地理解这一主题。

1. 简介在Java项目中,认证和授权是保障系统安全的重要环节。

认证通常涉及验证用户的身份,而授权则定义了用户对系统资源的访问权限。

本文将深入探讨Java项目中常用的认证和授权方式,以及它们的优缺点和适用场景。

2. 基于角色的访问控制(RBAC)基于角色的访问控制是一种常见的授权方式,它将用户分配到不同的角色中,每个角色具有特定的权限。

在Java项目中,可以使用Spring Security等框架实现RBAC,通过配置角色和权限来控制用户的访问。

3. OAuth 2.0OAuth 2.0是一种开放标准的授权协议,它允许用户授权第三方应用访问其资源,而无需将用户名和密码提供给第三方应用。

在Java项目中,可以使用Spring Security OAuth等框架实现OAuth 2.0的认证和授权功能。

4. 单点登录(SSO)单点登录是一种认证机制,允许用户使用一组凭据登录多个应用程序。

在Java项目中,可以使用Shiro等框架实现SSO,提供统一的认证入口,减少用户的登录次数,提升用户体验。

5. JWT(JSON Web Token)JWT是一种用于跨域身份验证的开放标准,它通过在用户和服务器之间传递声明(claim)来安全地传输信息。

在Java项目中,可以使用JJwt等框架实现JWT认证,提供安全、轻量级的身份验证方案。

6. 结语认证和授权是Java项目中不可或缺的部分,合理选择和使用认证和授权方式对系统的安全性和用户体验有着重要的影响。

通过本文的全面评估,希望您能更深入地理解Java项目中常用的认证和授权方式,并根据实际情况选择合适的方式来保障系统安全。

Sun公司Java将用于惠普智能手机

Sun公司Java将用于惠普智能手机
mat r e d n te to n o r s o d n o u ins t sn e ig atn i na d c re p n i g s l to . e e i me t n e , o t o sn t r igt h oo y d tm d ewo kn e h oo y v n e Ke wo d tes c n rls qup n e d r c ni u u ewo k n c n lg , o— o en t r i g tc n lg , y r s h e o dwiee s
如同一物理站 点存在两套系统 ,则先更换 G M10 系 S 0 8
统 ,再 更换 G M90系统 。 S 0
() 2 机房 条件好 , 以新增 - 8 可 4 V电源的 , 直接新
增一套 - 8 4 V电源 系统 ,其中 电池为 4 V30 h, 8 0 A 新增

剩余 10 A分路数不能满足要求 ,建议将需要替换的爱 0
在机房 条件许可的条件下 , 先安装好华 为设备 , 再 将天馈系统从爱立信设备割接到华为设备 ,在机房条件 不允许 的情况下 , 直接在原位 置进行设备更换 , 即先拆 除爱立信设备 ,在爱立信设备的位置上 安装华 为设备。
需要核算现有电源系统容量能否满足两种设备共同上电 需 要 ,如不能满足需 对现 有 电源 系统 容量进行临时扩 容, 所用电源模块调用库存 , 无线设备更换后 临时扩容 用电源模块 归库; 如先安装华 为设备时 , 现有 电源系统
方案同 ( ) 1。
() 3 机房面积小 , 无法新增一套 一 8 4 V电源或新增

套- 8 4 V电源机房承重困难的 ,本期拆除原有 + 4 2V
系统 , 在原位置重新安装一套 - 8 4V电源 ,电池更换 为 4 V 0 Ah 8 3 0 ,新 增 一 8 4 V电源需要配置的模块数需要核 算 ,电源系统 的拆除 、 安装和无线设备的拆除 、 安装可

java authorization 认证类型

java authorization 认证类型

一、概述Java是一种面向对象的编程语言,广泛应用于企业级应用开发中。

在企业级应用开发中,安全性是至关重要的,而认证是实现安全性的重要环节之一。

Java提供了多种认证类型,开发人员可以根据实际需求选择合适的认证类型来保护应用程序的安全性。

二、基本认证类型1. 基于用户名和密码的认证:这是最常见的认证类型,用户需要提供用户名和密码才能访问受保护的资源。

2. 基于角色的认证:通过角色来限制用户对资源的访问权限,可以在代码中进行硬编码,也可以与数据库中的角色进行动态关联。

三、OAuth2.0认证类型1. 密码授权模式:用户提供用户名和密码来获取访问令牌,访问令牌用于访问受保护的资源。

2. 客户端凭证授权模式:客户端使用自己的凭证来获取访问令牌,访问令牌用于访问受保护的资源。

3. 授权码模式:用户通过浏览器授权,客户端使用授权码来获取访问令牌,访问令牌用于访问受保护的资源。

4. 简化模式:用于移动应用程序或web应用程序中,通过重定向获取访问令牌,访问令牌用于访问受保护的资源。

四、JWT认证类型JWT(JSON Web Token)是一种基于JSON的开放标准(RFC 7519),用于声明跨域全球信息站和移动应用的用户身份。

JWT通过数字签名或加密保证信息的安全性,常用于单点登入系统。

五、SAML认证类型SAML(Security Assertion Markup Language)是基于XML的开放标准,用于在安全领域中交换身份验证和授权数据。

在Java应用程序中,可以使用SAML实现单点登入和跨域身份验证。

六、总结Java提供了多种认证类型,开发人员可以根据实际情况和需求选择合适的认证类型来提高应用程序的安全性。

无论是基本认证类型、OAuth2.0认证类型、JWT认证类型还是SAML认证类型,都可以在Java应用程序中轻松实现,保护应用程序的安全性。

掌握这些认证类型,对于Java开发人员来说至关重要,也是提高自身技术水平的必修课程之一。

java license概念

java license概念

java license概念(原创实用版)目录1.Java License 的定义和作用2.Java License 与其他常见软件许可证的区别3.Java License 的历史和版本4.Java License 对开发者的影响正文【1.Java License 的定义和作用】Java License 是 Sun Microsystems(现已被甲骨文公司收购)为Java 编程语言制定的一种软件许可证。

它是一种开源许可证,允许开发者自由地使用、修改和分发 Java 源代码。

Java License 的主要目的是为了促进 Java 编程语言的发展和普及,为广大开发者提供一个良好的开发环境。

【2.Java License 与其他常见软件许可证的区别】Java License 与其他常见软件许可证有以下几点不同:(1)与 GPL 许可证相比,Java License 允许商业软件使用 Java 源代码,而不仅仅限于开源软件。

这使得许多商业公司能够基于 Java 开发和发布他们的产品。

(2)与 BSD 许可证相比,Java License 对源代码的修改和使用有一定的限制。

例如,它要求所有使用 Java 源代码的软件在其文档和/或其他材料中标明“Java”和“Sun Microsystems”等字样。

【3.Java License 的历史和版本】Java License 的历史可以追溯到 1995 年,当时 Sun Microsystems首次发布了 Java 编程语言。

从那时起,Java License 已经经历了多个版本。

目前,最新的 Java License 版本是 Java SE 8 中使用的版本。

【4.Java License 对开发者的影响】Java License 对开发者产生了深远的影响。

首先,它使得 Java 编程语言成为全球最流行的编程语言之一。

许多企业和开发者都选择使用Java,因为它具有跨平台、高性能和安全性等优点。

sun.java2d.uiscale 原理

sun.java2d.uiscale 原理

sun.java2d.uiscale 原理
sun.java2d.uiscale是Java 2D 系统属性,用于在Java 应用程序中调整用户界面元素的缩放比例。

这在高分辨率显示器(如Retina 显示器)上特别有用,因为默认情况下,Java 应用程序可能不会以适当的比例渲染用户界面元素,导致它们看起来太小或模糊。

Java 2D 是Java 平台的一部分,用于处理二维图形和图像。

它提供了一套API,允许开发人员绘制形状、文本和图像,以及执行各种图形操作,如缩放、旋转和裁剪。

sun.java2d.uiscale属性的工作原理是通过改变Java 2D 渲染引擎的缩放因子来影响图形和图像的渲染。

这个属性接受一个浮点数作为值,表示缩放比例。

例如,如果sun.java2d.uiscale设置为2.0,则所有Java 2D 渲染的元素将以两倍的尺寸渲染。

然而,请注意,sun.java2d.uiscale是一个非标准的、特定于实现的系统属性,这意味着它可能不在所有Java 运行时环境或所有操作系统中都受支持。

此外,使用这个属性可能会引入一些副作用,比如性能下降或渲染问题。

对于需要处理高分辨率显示器的Java 应用程序,更好的做法是使用JavaFX 而不是依赖于特定于实现的系统属性。

JavaFX 是一个更现代、更强大的图形和用户界面框架,它提供了更好的高分辨率显示器支持,以及更广泛的操作系统和Java 运行时环境兼容性。

SUN公司认证

SUN公司认证

SCJPsun certificated java programmer (SCJP)一种Java认证考试对于Java程序设计员,Sun推出两项认证:Sun Certificated Java Programmer (SCJP)和Sun Certificated Java Developer(SCJD)。

SCJP 可以说各种Java认证的基础,相对于SCJD来说,SCJP跟侧重于测验您的Java程序设计概念及能力,内容偏重于Java语法及JDK的内容。

其对应的最主要的学习课程是SL-275。

SCJP 的学习/考试过程是相对相对比较明确的,首先学员参加SL-275的培训课程(标准费用大致在2600人民币,包括考试券、教材费),也可以单独购买考试券(Certification Voucher,费用现在是1250元),然后在Prometric 考试中心参加考试。

通过后获得Sun颁发的SCJP认证证书。

SCJDSun Certified Java Developer(SCJD)一种Java认证考试,由Sun公司推出。

SCJD相对于SCJP进一步测试用JAVA 开发应用程序的能力,考试者必须先完成一个程序的设计方案,再回答与此方案相关的一些问题。

Sun Java认证是业界唯一经Sun授权Java认证培训。

Sun认证Java 开发员考试内容包括完整的Java应用程序开发,涉及数据库、图形用户界面、网络通信、平台移植等各方面内容,要求学员已通过Java程序员认证。

学习结束后,可参加全球连网考试。

考试合格则由Sun公司颁发国际通用的Java开发员证书。

java开发员的认证考试以Sun指定的javaSL-285为教材,机考部分的考试号为310-027。

Java开发员认证课程:课程的具体内容有:解释软件开发周期每阶段的目标,可使用适当的java程序类型,了解API设计的基本元素,根据项目中的功能要求确定程序组件;描述关系数据库的设计及其设计原则;了解JDBC、ODBC 及其使用;创建良好的GUI设计原则设计自己的用户界面;使用Socket连接以适当格式传输数据,创建一个多层java小程序或应用程序;了解在Solaris和Windows平台之间的移植问题。

Sun的四大Java认证体系

Sun的四大Java认证体系

Sun的四大Java认证体系Sun的四大Java认证体系Sun公司的Java技术培训和认证不仅是java开发技术领域最权威的认证,同时也是开发类认证中很重要的一种,我们在这里将为你介绍Sun的各种JAVA认证的关系以及取得这些认证的方法。

Sun公司的java技术认证包括4种:Sun certified java programmer(SCJP)Sun certified java developer(SCJD)Sun certified web component developer for java 2 platform enterprise editionSun certified enterprise architect for J2EE technology其中SCJP 以及SCJD 是java开发技术的基础及核心培训/认证,随着java技术的发展,现在这两个认证面向的是新的java2技术(现在国内的java认证培训中心也都是按照java2技术标准授课了),因此其正式的名称应该分别是:Sun certified java2 programmer 以及 Sun certified java2 developer,或者称为Sun certified programmer for java 2 platform 以及Sun certified developer for java 2 platform,认证和培训的意义都是一样的,为了简单清楚,我们还是把这两个认证称为SCJP 和SCJD。

怎么获得SCJD认证?SCJP 可以说各种java认证的基础,其对应的最主要的学习课程是一门java的基础课程,也就是java programming language (sl-275),这也是国内的SCJP培训的标准课程。

而SCJD则可以看做是高级的java技术培训认证,其要求和难度都要高于SCJP,而且,如果你计划获得SCJD认证,比如先获得SCJP认证资格。

sunjava认证考试报考指南

sunjava认证考试报考指南

sunjava认证考试报考指南
sun java认证考试报考指南
报名条件
要想获得SCSA证书要通过两门考试,通常我们都叫做PART 1 和PART 2
获得SCNA证书,先提条件是必须拥有任一版本的SCSA证书,然后参加SCNA的认证考试
SCSecA(安全管理员)考试前提是必须获得SCNA证书,这个认证是Solaris的顶级认证
报名时间
要参加SUN的认证考试,必须提前预约报名。

获得SUN的`考试券。

考试卷可由各地的授权中心代为购买,或者直接向SUN公司购买,价格大约为1250元/门。

基本上,SUN公司每年都会推出一些优惠活动,在活动期间购买考试券的价格甚至可优惠到6.5折。

考试时间
(1)提前预约考试。

只要在考试券的有效期内(在正常情况下,有效期为1年),你都可以预约考试。

大约需要提前3天左右预约参加指定科目的考试。

(2)按时参加考试。

如果考试通过,大约1个月左右,你将收到SUN公司从美国寄出的纸质认证证书,同时还有一个名片大小的卡片和带别针的长方形胸卡(尺寸大约为2cm×1cm)。

【sun java认证考试报考指南】。

SUN认证基本知识

SUN认证基本知识

SUN认证基本知识SUN认证基本知识Sun认证是给网络设计界建立的一套认证标准,Sun公司推出了Java以及Solaris技术认证方案。

对于企业而言,可以借助这项认证作为招聘人才的评判标准,或是作为衡量员工技术水准的依据;在个人方面,通过这些认证也可以证明个人的技术能力。

Sun公司简介太阳微系统公司(Sun Microsystems,简称Sun)在自己的广告中宣称:我们就是.com前面那一点(We are the dot in the .com),这并非大言不惭----如果你充分了解Sun公司的历史以及现状。

Sun起初由包括Scott McNealy(现任Sun公司首席执行官)等4名在Stanford大学和加州大学Berkeley分校上学的研究生创建,1982年2月正式注册,先以工作站的设计制作为业务重点,6个月后开始创收盈利。

Sun公司的名称,实际为Stanford University Network3个英文单词首写字母之缩略,中文意为:斯坦福大学网络,而跟太阳没有任何关系。

有趣的是,在合力发起Sun的团队中,唯一的技术人员—--比尔·乔伊(Bill Joy,现在为Sun公司的.首席科学家)在此之前是阿帕网雇用的一名黑客。

这也许为Sun的技术开发定了一个基调,直到现在,Sun一直在计算机边缘(也可以说成是尖端)技术处于领先地位。

他们利用原贝尔试验室开发的Unix作平台,以全面开放的概念、对新技术的不懈追求和对用户要求的积极响应,创出了一条成功之路,为世人所称道。

从公司成立开始,Sun就提出了“The Network is the computer—--网络就是计算机”这一见解独特的口号。

从那时起,Sun一直致力于发展网络计算技术、产品与服务,主要包括大型计算机系统、服务器、工作站操作系统和企业级网络计算软件。

特别是Unixl作站/服务器在中国大陆市场名列第一,市场份额超过30%,在香港占有率更高达52%。

sun公司的Java编码规范

sun公司的Java编码规范

Java编码规范Java编码规范11.说明21.1 为什么要有编码规范21.2 声明22. 文件名<File Names>22.1 文件后缀<File Suffixes>23.1 Java源文件<Java Source Files>23.1.1 开头注释<Beginning ments>23.1.2 包和引入<Package and Import Statements>23.1.3 类和接口声明<Class and Interface Declarations>24.1 行长度34.2 换行<Wrapping Lines>3// CONVENTION INDENTATION3Object andStillAnother> {3|| !<condition5 && condition6>> {35. 注释<ments>35.1 实现注释的格式<Implementation ment Formats>45.1.1 块注释45.1.2 单行注释<Single-Line ments>45.1.3 尾端注释<Trailing ments>45.1.4 行末注释<End-Of-Line ments>45.2 文档注释<Documentation ments>46. 声明<Declaration>56.1 每行声明变量的数量<Number Per Line>56.2 初始化<Initialization>56.3 布局<Placement>57.1 简单语句<Single Statement>57.2 复合语句<pound Statements>57.3 返回语句<return Statements>s57.4 if, if-else, if else-if else语句<if, if-else, if else-if else Statements>5 } else {6} else if <condition> {6} else if <condition> {67.5 for语句<for Statements>67.6 while语句<while Statements>67.7 do-while语句<do-while Statements>67.8 switch语句<switch Statements>67.9 try-catch语句<try-catch Statements>6} catch <ExceptionClass e> {6} catch <ExceptionClass e> {6} finally {68. 空白<White Space>68.1 空行<Blank Lines>68.2 空格<Blank Spaces>69. 命名规范<Naming Convention>710. 编程惯例<Programming Practices>710.1 提供对实例以与类变量的访问控制<Providing Access to Instance and Class V ariables>7 10.2 引用类变量和类方法<Referring to Class Variables and Methods>710.4 变量赋值<Variable Assignments>710.5 其它惯例<Miscellaneous Practices>810.5.1 圆括号<Parentheses>810.5.2 返回值<Returning Values>810.5.3 条件运算符"?"前的表达式<Expressions before "?" in the Conditional Operator>810.5.4 特殊注释<Special ments>811. 代码范例<Code Examples>811.1 Java源文件范例<Java Source File Example>81.说明1.1 为什么要有编码规范编码规范对于程序员而言尤为重要,有以下几个原因:◆一个软件的生命周期中,80%的花费在于维护.◆几乎没有任何一个软件,在其整个生命同期中,均由最初的开发人员来维护.◆编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新代码.◆如果你将源码作为产品发布,就需要确认它是否被很好的打包并且清晰无误,一如你已构建的其它任何产品.为了执行规范,每个软件开发人员必须一致遵守编码规范.每个人!!!1.2 声明本文档反映的是Sun Microsystem公司,Java语言规范中的编码标准部分.主要贡献者包括:Peter King,Patrick Naughton,Mike DeMoney,Jonni Kanerva,Kathy Walrath以与Scott Hommel.本文档现由Scott Hommel维护,有关评论请发至shommeleng.sun .2. 文件名<File Names>这部分列出了常用的文件名与其后缀.2.1 文件后缀<File Suffixes>Java程序使用下列文件后缀:2.2 常用文件名<mon File Names>常用的文件名包括:3. 文件组织<File Orgnization>一个文件由被空行分割而成的段落以与标识每个段落的可选注释共同组成.超过2000行的程序难以阅读,应该尽量避免."Java源文件范例"提供了一个页面布局合理的Java程序范例.3.1 Java源文件<Java Source Files>每个Java源文件都包含一个单一的公共类或接口.若私有类和接口与一个公共类相关联.可以将它们和公共类放入同个源文件.公共类必须是这个文件中的第一个类和接口.Java源文件还遵循以下规则:◆开头注释<参见"开头注释">◆包和引入语句<参见"包和引入语句>◆类和接口声明<参见"类和接口声明>3.1.1 开头注释<Beginning ments>所有的源文件都应该在开头有一个C语言风格的注释,其中列出数出类名、版本信息,日期和声明:/ ** Classname** Version information** Date** Copyright notice* /3.1.2 包和引入<Package and Import Statements>在多数Java源文件中,第一个非注释行是包语句行.在它之后可以跟引入语句.例如:package java.awt;import java.awt.peer.CanvasPeer;3.1.3 类和接口声明<Class and Interface Declarations>下表描述了类和接口声明的免修部分以与它们出现的先后次序.参见"Java源文件范例"中一个包含注释的例子.4. 缩进排版<Indentation>4个空格常被作为缩进排版的一个单位.缩进的确切解释并未详细指定<空格vs.制表符>.一个制表符等于8个空格<而非4个>.4.1 行长度尽量避免一行长度超过80个字符,因为很多终端和工具不能很好处理之.注意:用于文档是的例子应该使用更短的行长,长度一般不超过70个字符.4.2 换行<Wrapping Lines>当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之:◆在一个逗号后面断开.◆在一个操作符前面断开.◆宁可选择较高级别的<higher-level>的断开,而非较低级别<lower-level>的断开.◆新的一行应该与上一行同一级别表达式的开头处对齐.◆如果以上规则导致你的代码混乱或者使你的代码都堆挤在右边,那就代之以缩进8个空格.以下是断开方法的一些例子:someMethod<longExpression1, longExpression2,longExpression3, longExpression4, longExpression5>;var = someMethod1<Expression1,someMethod2<longExpression2,longExpression3>>;以下是两个断开算术表达式的例子.前者更好,因为断开处位于括号表达式的外边,这是个较高级别的断开.longName1 = longName2 * <longName3 + longName4- longNeme5>+ 4 * longName6>;//PREFFER longName1 = longName2 * <longName3+ longName4- longName5>+ 4 * longName6; //A VOID 以下是两个缩进方法声明的例子.前者是常规情形,后者若使用常规的缩进方式将会使第二行和第三行移得很靠右,所以代这以缩进8个空格.// CONVENTION INDENTATIONsomeMethod<int anArg, Object anotherArg,String yetAnotherArg,Object andStillAnother> {……}// INDENT 8 SPACES TO A VOID VERY DEEP INDENTSprivate static synchronized horkingLongMethodName<int anArg, Object anotherArg, String yetAnotherArg,Object andStillAnother> {……}if语句的换行通常使用8个空格的规则,因为常规缩进<4个空格>会使语句看起来比较费劲.比如://DON’T USE THIS INDENTATIONif<<condition1 && condition2>|| <condition3 && condition4>|| !<condition5 && condition6>> { //BAD WRAPSdoSomethingAboutIt<>; // MAKE THIS LING EASY TO MISS }// USE THIS INDENTATION INSTEADif <<condition1 && condition2>|| <condition3 && condition4>|| !<condition5 && condition6>> {doSomethingAboutIt<>;}// OR USE THISif<<condition1 && condition2> || <condition3 && condition4>|| !<condition5 && condition6>> {doSomthingAoutIt<>;}这里有三种可行的方法用于处理三元运算表达式:alpha = <aLongBooleanExpression> ? beta : gamma;alpha = <aLongBooleanExpression> ? beta: gamma;alpha = <aLongBooleanExpression>? beta: gamma;5. 注释<ments>Java程序有两类注释:实现注释<implementation ments>和文档注释<document ments>.实现注释是那些在C++中见过的,使用/*…*/和//界定的注释.文档注释<被称为"doc ments">是Java独有的,并由/**…*/界定.文档注释可以通过javadoc工具转换成HTML文件.实现注释用以注释代码或或者实现细节.文档注释从实现自由<implemtentation-free>的角度描述代码的规范.它可以被那些手头没有源码的开发人员读懂.注释应被用来给出代码的总括,并提供代码自身没有提供的附加信息.注释应该仅包含与阅读和理解程序有关的信息.例如,相应的包如何被建立或位于哪个目录下之类的信息不应包括在注释中.在注释里,对设计决策中重要的或者不是显而易见的地方进行说明是可以的,但应避免提供代码中已清晰表达出来的重复信息,多余的注释很容易过时.通常应避免那些代码更新就可能过时的注释.注意:频繁的注释有时反映出代码的低质量.当你觉得被迫要加注释的时候,考虑一下重写代码使其更清晰.注释不应写在用星号或字符画出来的大框里.注释不应包括诸如制表符和回退符之类的特殊字符.5.1 实现注释的格式<Implementation ment Formats>程序可以有4种实现注释的风格:块<Block>,单行<single-line>,尾端<trailing>和行末<end-of-line>.5.1.1 块注释块注释通常用于提供对文件,方法,数据结构和算法的描述.块注释被置于每个文件的开始处以与每个方法之前.它们也可以被用于其他地方,比如方法的内部.在功能和方法内部的块注释应该和它们所描述的代码具有一样的缩进格式.块注释之首应该有一个空行,用于把块注释和代码分割开来,比如:/ ** Here is a block ment.*/块注释可以以/ *-开头,这样indent<1>就可以将之识别为一个代码块的开始,而不会重排它./ *-* Here is a block ment with some very special* formatting that I want indent<1> to ignore.** one* two* three*/注意:如果你不使用indent<1>,就不必在代码中使用/ *-, 或为他人可能对你的代码运行indent<1>让步.参见"文档注释".5.1.2 单行注释<Single-Line ments>短注释可以显示一行内,并与其后的代码具有一样的缩进层级.如果一个注释不能在一行内写完,就该块注释<参见"块注释">.单行注释之前应该有一个空行.以下是一个Java代码中单行注释的例子:if<condition> {/ * Handle the condition. */……}5.1.3 尾端注释<Trailing ments>极短的注释可以与它们所要描述的代码位于同一行,但是应该有足够的空白来分开代码和注释.若有多个短注释出现于大段代码中,它们应该具有相同的缩进.以下是一个Java代码中尾端注释的例子:if<a ==2> {return TRUE; / * special case */} else {return isPrime<a>; / * works only for odd a */ }5.1.4 行末注释<End-Of-Line ments>注释界定符"//",可以注释掉整行或者一行中的一部分.它一般不用于连续多行的注释文本;然而,它可以用来注释掉多行的代码段.以下是所有三种风格的例子:if<foo > 1> {// Do a double-filp.……}else {return false;}// if <bar > 1> {//// // Do a triple-filp.//……// }// else {//return false;// }5.2 文档注释<Documentation ments>注意:此处描述的注释格式之范例,参见"Java源文件范例"若想了解更多,参见"How to Write Doc ments for Javadoc",其中包含了有关文档注释标记的信息<return,param,see>:java.sun /javadoc/writingdocments/index.html若想了解有关文档注释和javadoc的详细资料,参见javadoc的主页:java.sun /javadoc/index.html文档注释描述Java的类、接口、构造器、方法,以与字段<field>.每个文档注释都会被置于注释界定符/ **…*/之中,一个注释对应一个类、接口或成员.该注释应位于声明之前:/ *** The Example class provides …*/public class Example { …注意:顶层<top-level>的类和接口是不缩进的,而其成员是缩进的.描述类和接口的文档注释的第一行会被置于注释的第一行</ **>不需要缩进;随后的文档注释每行都缩进1格<使星号纵向对齐>.成员,包括构造函数在内,其文档注释的第一行缩进4格,随后每行都缩进5格.若你想给出有关类、接口、变量或方法的信息,而这些信息又不适合写在文档中,则可使用实现块注释<见5.1.1>或紧跟在声明后面的单行注释<见 5.1.2>.例如,有关一个类实现的细节应放入紧跟在类声明后面的实现块注释中,而不是放在文档注释中.文档注释不能放在一个方法或构造器的定义块中,因为Java会将位于文档注释之后的第一个声明与其相关联.6. 声明<Declaration>6.1 每行声明变量的数量<Number Per Line>推荐一行一个声明,因为这样以利于写注释.亦即,int level; // indentation levelint size; // size of table要优于,int level, size;不要将不同类型变量的声明放在同一行,例如:int foo, fooarry[]; // WRONG!注意:上面的例子中,在类型和标识之间放了一个空格,另一种被允许的替代方法是使用制表符:int level;// indentation levelint size;// size of tableObject currentEntry; // currently selected table entry6.2 初始化<Initialization>尽量在声明局部变量的同时进行初始化.唯一不这么做理由是变量的初始值依赖于某些先前发生的计算.6.3 布局<Placement>只在代码块的开始处声明变量<一个块是指任何被包含在大括号"{"和"}"中间的代码>.不要在首次用于该变量时才声明之,这会把注意力不集中的程序员搞糊涂,同时会妨碍代码在该作用域内的可移植性.void myMethod<> {int int1 = 0;if<condition> {int int2 = 0;…}}该规则的一个例外是for循环的索引变量for <int i = 0; I < maxLoops; i++> { … }避免声明的局部变量覆盖上一级声明的变量.例如,不要在内部代码块中声明相同的变量名:int count;…myMethod<> {if <condition> {int count = 0; // A VOID…}…}6.4 类和接口的声明<Class and Interface Declarations>当编写类和接口时,应该遵守以下格式规则:1◆在方法名与其参数列表之前的左括号"<"间不要有空格.◆左大括号"{"位于声明语句同行的末尾.◆右大括号"}"另起一行,与相应的声明语句对齐,除非是一个空语句,"}"应紧跟在"{"之后.class Sample extends Object {int ivar1;int ivar2;Sample<int i, int j> {ivar1 = i;ivar2 = j;}int emptyMethod<> {}…}方法与方法之间以空行分隔.7. 语句<Statements>7.1 简单语句<Single Statement>每行至多包含一条语句,例如:argv++; // Correctargc--; // Correctargv++; argc--; // A VOID!7.2 复合语句<pound Statements>复合语句是包含在大括号中的语句序列,形如"{ 语句}".例如下面各段.◆被括其中的语句应该较之复合语句缩进一个层次.◆左大括号"{"应位于复合语句起始行的行尾;右大括号"}"应另起一行并与复合语句首行对齐.◆大括号可以被用于所有语句,包括单个语句,只要这些语句是诸如if – else或for控制结构的一部分.这样便于添加语句而无需担心由于忘了加括号而引入bug.7.3 返回语句<return Statements>s一个带返回值的return语句不使用小括号"<>",除非它们以某种方式使返回值更显见.例如:return;return myDisk.size<>;return <size ? size ; defaultSize>;7.4 if, if-else, if else-if else语句<if, if-else, if else-if else Statements>if-else语句应该具有如下格式:if <condition> {statements;}if <condition> {statements;} else {statements;}if <condition> {statements;} else if <condition> {statements;} else if <condition> {statements;}注意:if语句问题用"{"和"}"括起来,避免使用如下容易引起错误的格式:if <condition> // A VOI! THIS OMITS THE BRACES {}! statement;7.5 for语句<for Statements>一个for语句应该具有如下格式:for <initialization; condition; update> {statements;}一个空的语句<所有工作都在初始化,条件判断,更新子句中完成>应该具有如下格式:for <initialization; condition; update>;当在for语句的初始化或更新子句中使用逗号时,避免因使用三个以上变量,而导致复杂度提高.若需要,可以在for循环之前<为初始化子句>或for循环末尾<为更新子句>使用单独的语句.7.6 while语句<while Statements>一个while语句应该具有如下格式:while <condition> {statements;}一个空的while语句应该具有如下格式:while <condition>;7.7 do-while语句<do-while Statements>一个do-while语句应该具有如下格式:do {statements;} while <condition>;7.8 switch语句<switch Statements>一个switch语句应该具有如下格式:switch <condition> {case ABC:statements;/ * falls through */case DEF:statements;break;case XYZ:statements;break;}每当一个case顺着往下执行时<因为没有break语句>,通常应在break语句的位置添加注释.上面的示例代码中就包含注释/ * falls through */.7.9 try-catch语句<try-catch Statements>一个try-catch语句应该具有如下格式:try {statements;} catch <ExceptionClass e> {statements;}一个try-catch语句后面也可能跟着一个finally语句,不论try代码块是否顺利执行完,它都会被执行.try {statements;} catch <ExceptionClass e> {statements;} finally {statements;}8. 空白<White Space>8.1 空行<Blank Lines>空行将逻辑相关的代码段分隔开,以提高可读性.下列情况应总是使用两个空行:◆一个源文件的两个片段<section>之间.◆类声明和接口声明之间.下列情况应该总是使用一个空行:◆两个方法之间.◆方法内的局部变量和方法的第一条语句之间.◆块注释<参见"5.1.1”>或单行注释<参见5.1.2>之前.◆一个方法内的两个逻辑段之间,用以提高可读性.8.2 空格<Blank Spaces>下列情况应该使用空格:◆一个紧跟着括号的关键应该被空格分开,例如:while <true> {….}注意:空格不应该置于方法名与其左括号之间,这将有助于区分关键字和方法调用.◆空白应该位于参数列表中逗号的后面.◆所有的二元运算符,除了".",应该使用空格将之与操作数分开.一元操作符和操作数之间不应该加空格,比如:负号<"-">,自增<"++">和自减<"--">.例如:a += c + d;a = <a + b> / <c * d>;while <d++ + s++> {n++;}printSize<"size is " + foo + "\n">;◆for语句中的表达式应该被空格分开,例如:for <expr1; expr2; expr3>◆强制转型后应该跟一个空格,例如:myMethod<<byte> aNum, <Object> x>;myMethod<<int> <cp + 5>, <<int> <i + 3>> + 1>;9. 命名规范<Naming Convention>9.1包<Packages>一个唯一包名的前缀总是全部小写的ASCⅡ字母并且是一个顶级域名,通常是,gov,edu,mil,net,org,或1981年ISO 3166标准所指定的标识的国家的英文双字符代码.包名的后续部分根据不同机构各自内部的命名规范而不尽相同.这类命名规范可能以特定目录名的组成来区分部门<department>,项目<project>,机器<machine>,或注册名<login names>.例如:.sun.eng.apple.quicktime.v2edu.cmu.cs.bovik.cheese9.2类<Classes>类名是一个名词,采用大小写混合方式,每个单词的首字母大写.尽量使你的类名简洁而富于描述.使用完整单词,避免缩写词<除非该缩写词被广泛的使用,如URL,HTML>.例如:class Rasterclass ImageSprite9.3接口<Interfaces>interface RasterDelegateinterface Storing9.4方法<Methods>方法名是一个动词,采用大小写混合方式,第一个单词的首字母小写,其后单词的首字母大写.例如:run<>runFase<>getBackground<>9.5变量<Variables>除了变量名外,所有实例,包括类,类常量,均采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写.变量名不应以下划线或美元符号开头,尽管这在语法上是允许的.例如:char cint ifloat myWidth9.6实例变量<Instance Variables>实例变量名应简短且富于描述.变量名的选用应该易于记忆,即,能够指出其用途.尽量避免单个字符的变量名,除非是一个性临时变量.临时变量通常被取名为i,j,k,m和n,它们一般用于整形;c,d,e,它们一般用于字符型.int _employeeldString _nameCustomer _customer9.7常量<Constants>大小写规则和变量名相似,除了前面需要一个下划线隔开.尽量避免ANSI常量,容易引起错误.例如:static final int MIN_WIDTH = 4static final int MAX_WIDTH = 999static final int GET_THE_CPU = 1命名规范使程序更易读,从而更易于理解.它们也可以提供一些有关标识符功能的信息,以助于理解代码.例如,不论它是一个常量、包,还是类<如9.7的例子所示>.10. 编程惯例<Programming Practices>10.1 提供对实例以与类变量的访问控制<Providing Access to Instance and Class Variables>若没有足够的理由,不要把实例或类类变量声明为public.通常,实例变量无需显式的设置<set>和获取<gotten>,通常这作为方法调用的边缘效应<side effect>而产生.一个具有public实例变量的恰当例子,是类仅作为数据结构,没有行为.亦即,若你要使用一个结构<struct>而非一个类<如果Java支持结构的话>,那么把类的实例变量声明为public是合适的.10.2 引用类变量和类方法<Referring to Class Variables and Methods>避免用一个对象访问一个类的静态变量和方法.应该用类名替代.例如:classMethod<>; // OKAClass.classMethod<>; // OKanObject.classMethod<>; // A VOID!10.3常量<Constants>位于for循环中作为计数器值的数字常量,除了-1,0和1之外,不应被直接写入代码.10.4 变量赋值<Variable Assignments>避免在一个语句中给多个变量赋相同的值.它很难读懂.例如:fooBar.fChar = barFoo.lchar = ‘c’; // A VOID!不要将赋值运算符用在容易与相等关系运算符混淆的地方.例如:if <c++ = d++> { // A VOID! <Java disallows>….}应该写成if <<c++ = d++> ! = 0> {…}不要使用内嵌<embedded>赋值运算符试图提高运行时效率,这是编译器的工作.例如:d = <a = b +c> + r; // AOVID!应该写成a =b + c;d = a + r;10.5 其它惯例<Miscellaneous Practices>10.5.1 圆括号<Parentheses>一般而言,在含有多种运算符的表达式中使用括号来避免运算符优先级问题,是个好方法.即便运算符的优先级对你而言可能很清楚,但对其他人未必如此.你不能假设别的程序员和你一样清楚运算符的优先级.if <a == b && c ==d> // A VOID!if <<a == b> && <c == d>> // RIGHT10.5.2 返回值<Returning Values>设法让你的程序结构符合目的.例如:if <booleanException> {return true;else {return false;}应该代之以如下方法:return booleanException;类似地:if <condition> {return x;}return y;应该写为:return <condition ? x : y>;10.5.3 条件运算符"?"前的表达式<Expressions before "?" in the Conditional Operator>如果一个包含二元运算符表达式出现在三元运算符" ? : "之前,那么应该给表达式添上一对圆括号.例如:<x >= 0> ? x : -x;10.5.4 特殊注释<Special ments>在注释中使用##X来标识某些方法未实现<bogus>的但可以工作的内容.用FIXME来标识某些假的和错误的内容.11. 代码范例<Code Examples>11.1 Java源文件范例<Java Source File Example>下面的例子,展示了如何合理布局一个包含单一公共类的Java 源程序.接口的布局与其相似.更多信息参见"类和接口"以与"文档注释"./** <#>Blah.java 1.82 99/03/18** Copyright <c> 1994-199 Sun Microsystems, Inc.* 901 San Antonio Road, Palo Alto, California, 94303,* U.S.A* All rights reserved.** This software is the confidential and proprietary* information of Sun Microsystems, Inc. <"Confidential* Information">. You shall not disclose such Confidential * Information and shall use it only in accordance with the * terms of the license agreement you entered into with Sun. */package java.blah;import java.blah.blahdy.BlahBlah;/***Classdescriptiongoeshere.**verison1.8218Mar1999*author FirsnameLastname*/publicclass Blah extends SomeClass {/* A class implementation ment can go here. *//**classVar1documentationment*/publicstaticint classVar1;/***classVar2documentationmentthathappentobe*morethanonelinelong*/privatestatic Object classVar2;/**instanceVar2documentationment*/public Object instanceVar1;/**instanceVar3documentationment*/private Object[] instanceVar3;/***…constructorBlahdocumentationment…*/public Blah<> {//…implementation goes here…}/***…methoddoSomethingdocumentationment…*/publicvoid doSomething<> {//…implementation goes here…}/***…methoddoSomethingElsedocumentation*ment…*param someParamdescription*/publicvoid doSomethingElse<Object someParam> { //…implementation goes here…}}。

SUN认证的作用

SUN认证的作用

SUN认证的作用关于SUN认证的作用SUN认证是给网络设计界建立的一套认证标准,Sun公司推出了Java以及Solaris技术认证方案。

下面是店铺整理的精选的关于SUN 认证的作用,欢迎大家参考!Sun国际认证1)专业认证培训计划为系统管理员和Java网络管理员和程序员提供第三方认可的技能认证。

2)获得全球认可的软件职业资格证书;3)Java在跨平台、安全性、速度方面超过其他程序语言,重量级的公司广泛采用Java;4)Java因互联网而生,因互联网而不断完善;5)Java是发展迅速嵌入式操作系统的绝佳组合;6)据统计,目前中国有200多万Java程序员的空缺;为什么要做Java认证?根据最近发表的一份调查,软件开发人员对Java表现出来的兴趣与日俱增。

美国伊文斯市场调查公司在上个月完成的这项调查发,北美地区使用Java的软件开发人员比例达到了44%。

在北美以外地区,使用Java的软件开发人员比例为43%。

伊文斯公司预计,明年这个数字将上升到61%。

据该公司调查,过去两年来,使用Java的软件开发人员人数一直保持持续增长的势头。

另据< InternetWeek >的调查发现,同样从事程序开发,在美国Java程序开发人员的平均年薪最高,基本年薪为7万美元;C++、C和COBOL程序开发人员的平均年薪为6.6万美元,而Visual Basic程序开发人员最低,约为5.8万美元。

Java程序员是美国Sun公司国际认证的程序员,它是目前全球最受重视、最受欢迎的程序员资格认证之一,具备这一认证就可以获得极好的工作机会和丰厚待遇。

当前世界各地持有Java Programmer证书的人员供需差距极大,迫使企业不得不用高薪聘请Java程序员。

因此,Java Programmer的含金量比一般的技术人员要高出很大一块。

在美国、加拿大、澳大利亚、新加坡等发达国家和中等发达国家,持有Java Programmer认证证书的人年薪均在4-10万美金,而在国内持有Java Programmer认证的程序员也有极好的工作机会和很高的薪水。

java 认证方式

java 认证方式

java 认证方式
Java认证方式:
1、账户密码认证:
账户密码认证即用户输入账号密码的方式完成认证,它是最常见的认证方式之一,它往往需要用户记住一个账号和一个密码,在安全性上有一定的缺陷,很容易出现账号密码泄漏的问题,因此有时会搭配第三方账号认证,提高账号安全性。

2、Smarty 认证:
Smarty认证也叫做智能卡认证,它是一种利用智能卡认证的认
证技术,它一般会在账号和密码的基础上,将智能卡的内容作为第三方的鉴别,从而使得系统安全性更加高。

3、证书认证:
证书认证的基本原理是:服务器颁发给客户端一张服务器的数字证书,由客户经过验证后,使得客户认证服务器的合法性,以保证双方之间的数据传输完全有效及安全。

4、安全令牌认证:
安全令牌认证是指客户端将安全令牌和其他凭据(如账号和密码)一起发送到服务器,服务器在收到客户端的消息后,将安全令牌先保存到服务器,然后验证账号密码的合法性,如果认证通过,服务器将安全令牌移除掉,安全令牌认证可以加强传输的安全性。

5、指纹认证:
指纹认证不仅可以用于验证某人的身份,也可以用于验证计算机
系统的安全性,它可以支持多种体系结构,如嵌入式、桌面或移动系统,它的特点是认证过程简洁、安全性强,且它可以减少密码被盗的可能性,是目前最先进、最安全的认证方式之一。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Sun针对先进的科技,推出Java及Solaris技术认证方案。

根据这些认证,在企业方面可以藉此作为招聘人才的评判标准,或是作为衡量员工技术水准的依据;在技术方面,通过这些认证也可以证明个人的技术能力。

Sun在 UNIX领域一直是技术上和市场占有率的领先者;近年来推出的Java技术,更成为业界的标准。

Sun公司所举办的认证考试,也将成为Java和UNIX在全球信息界公认的标准。

Sun推出的专业认证包括下列三种:
Java认证考试
对于Java程序设计员,Sun推出两项认证:Sun Certified Java Programmer(SCJP)和Sun Certified Java Developer(SCJD)。

SCJP测验Java程序设计概念及能力,内容偏重于Java语法及JDK的内容;SCJD则进一步测试用Java开发应用程序的能力,考试者必须先完成一个程序的设计方案,再回答与此方案相关的一些问题。

Solaris系统管理认证考试
对Solaris/Sun OS系统管理员,Sun推出Certified Solaris Administrator(CSA)。

CSA 分别为两个等级(Part I 和 Part II ),测试对Solaris 系统管理的了解程度。

Solaris网络管理认证考试
为了测试使用者对于Solaris网络的管理能力,Sun还特别推出Certified Network Administrator(CNA). 内容包括基本网络概念、 Routing and Subnet、Security、Performance、DNS、NIS+等
通过SUN任何一门专业认证后,将全收到Sun Microsystems 总公司寄发的资格证书及徽章,并有权将通过Sun认证的标记印在个人名片上,作为个人技术能力的肯定。

考试科目考试号考试形式及格分数时间考费课程
SCJP(Sun
Certified Java2 Programmer)310-025
59道选择

答对71%以上
120分

1250SL-275/276
SCJD(Sun Certified Java2 Developer)到SUN
培训中
心报名
程序设计题通过程序设计不限2100
SL-285 310-027
5-10道简
答题
答对70%以上90分钟1250
CSA26 Part I(Certified
Solaris 2.6 Administrator)310-007
72道选择

答对75%以上90分钟1250SA-235
CSA26 Part II(Certified
Solaris 2.6 Administrator)310-008
72道选择

答对70%以上90分钟1250SA-286
CNA26(Certified
Network 2.6 Administrator)310-041
77道选择

答对70%以上90分钟1250SA-380
CSA7 Part I (Certified
Solaris 7 Administrator)310-009
81道选择

答对75%以上
120分

1250SA-237
CSA7 Part II
(Certified Solaris 7 310-010
94道选择

答对70%以上
120分

1250SA-287
SUN 认证JAVA 程序员
众所周知,Java 以其独有的开放性,跨平
台性和面向网络的交互性席卷全
球,以其安全性、易用性和开发周期短的特点,迅速从最初的编程语言发展成为全球第二大软件开发平台。

这些优点已引起国内外计算机界的极大关注;Java 公用规范(PAS)已被国际标准化组织(ISO )认定,Java 技术已列为当今世界信息技术三大要点之一。

根据权威部门的预测:到2000年,我国对Java 技术人员的需求量将高达20万余人。

然而,到目前为止,在我国参加认证培训的学员只有近万人,而参加认证考试并获得认证资格的人员不足2000人。

这个数字和20万人的需求量相差甚远。

因此,早日掌握Java 技术,对每个有志于在IT 行业发展的人来说是尤为重要的。

我们深信Java 技术的应用和普及,必将成为势不可挡的潮流迅速在世界各地发展。

Sun Java 认证是业界唯一经Sun 授权的Java 认证。

考试内容涉及所有Java 相关知识、编程概念及applet 开发技巧。

Sun 认证Java 程序员考试旨在观察您通过应用软件分配进行复杂编程的能力。

之后还要测试您完成编程所需的知识。

每次考试都包括65道以上的选择题,时间大约为90分钟。

课程:SL-275 JAVA 语言编程
本课程是使学员掌握如何使用标准Java Development Kit,V1.1 (JDK) 开发应用程序和applets 。

在本课程中您将学会Java 语言的语法。

如何使用Java 来创建图形用户接口GUI,事件处理机制, 例外处理,通过设计与开发各种Java 程序来获得实际的编程经验.您也将学到文件输入/输出(I/O)、 多线程和网络的知识.。

本课程适用于熟悉C 或C++的编程人员,也适用于想参加Sun Java 认证考试的学员。

预备知识: 学习本课程之前必须具备以下能力
能够编译C 或C++ 程序或者已经参加过SL-110课程;能够创建和编译简单的程序;使用WWW(World wide web) 浏览器,如: Netscape ;能够使用vi 或者OpenWindows 的文件编辑器;使用基本UNIX 的命令。

本课程学习完成后,将具备以下能力:
使用Java 编程语言创建Java 应用程序和applets
定义和描述垃圾搜集, 安全性和Java 虚拟机(JVM)
Administrator)
CNA7(Certified Network 7
Administrator)
310-042
80道选择

答对70%以上
120分钟
1250 SA-387
描述和使用 Java 语言面向对象的特点
开发图形用户接口 (GUI),利用Java支持的多种布局管理
描述和使用 Java 1.1 的事件处理模式
使用Java 语言的鼠标输入, 文本, 窗口和菜单窗
使用Java的例外处理来控制程序执行和定义用户自己的例外事件
使用Java 语言的先进的面向对象特点, 包括方法重载, 方法覆盖,抽象类,接口等实现文件的输入/输出(I/O)
使用Java 语言内在的线程模式来控制多线程
使用Java的Sockets 机制进行网络通信。

相关文档
最新文档