保健励志美文体育育儿作文
投稿投诉
作文动态
热点娱乐
育儿情感
教程科技
体育养生
教案探索
美文旅游
财经日志
励志范文
论文时尚
保健游戏
护肤业界

Java

  Java是由SunMicrosystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Javaapplet。另一方面,Java技术也不断更新。
  Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1。1x版发展到1。2版。目前常用的Java平台基于Java1。4,最近版本为Java1。7。
  Java分为三个体系JavaSE(Java2PlatformStandardEdition,Java平台标准版),JavaEE(Java2Platform,EnterpriseEdition,Java平台企业版),JavaME(Java2PlatformMicroEdition,Java平台微型版)。
  2009年04月20日,oracle(甲骨文)宣布收购sun。
  1991年,Sun公司的JamesGosling。BillJoe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个Oak(一种橡树的名字)软件,他是Java的前身。当时,Oak并没有引起人们的注意,直到1994年,随着互联网和3W的飞速发展,他们用Java编制了HotJava浏览器,得到了Sun公司首席执行官ScottMcNealy的支持,得以研发和发展。为了促销和法律的原因,1995年Oak更名为Java。Java的得名还有段小插曲呢,一天,Java小组成员正在喝咖啡时,议论给新语言起个什么名字的问题,有人提议用Java(Java是印度尼西亚盛产咖啡的一个岛屿),这个提议得到了其他成员的赞同,于是就采用Java来命名此新语言。很快Java被工业界认可,许多大公司如IBMMicrosoft。DEC等购买了Java的使用权,并被美国杂志PCMagazine评为1995年十大优秀科技产品。从此,开始了Java应用的新篇章。
  Java的诞生时对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响:
  (1)软件4A目标要求软件能达到任何人在任何地方在任何时间对任何电子设备都能应用。这样能满足软件平台上互相操作,具有可伸缩性和重用性并可即插即用等分布式计算模式的需求。
  (2)基于构建开发方法的崛起,引出了CORBA国际标准软件体系结构和多层应用体系框架。在此基础上形成了Java。2平台和。NET平台两大派系,推动了整个IT业的发展。
  (3)对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心。中间提供商,构件提供商,服务器软件以及咨询服务商出现。企业必须重塑自我,B2B的电子商务将带动整个新经济市场,使企业获得新的价值,新的增长,新的商机,新的管理。
  (4)对软件开发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的重要技术,重视开发团队的组织和文化理念,协作,创作,责任,诚信是人才的基本素质。
  总之,目前以看到了Java对信息时代的重要性,未来还会不断发展,Java在应用方面将会有更广阔的前景。
  Java名字起源
  Java自1995诞生,至今已经14年历史。Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans(对象豆)等等。SUN和Java的标识也正是一杯正冒着热气的咖啡。
  据JamesGosling回忆,最初这个为TV机顶盒所设计的语言在Sun内部一直称为Green项目。我们的新语言需要一个名字。Gosling注意到自己办公室外一棵茂密的橡树Oak,这是一种在硅谷很常见的树。所以他将这个新语言命名为Oak。但Oak是另外一个注册公司的名字。这个名字不可能再用了。
  在命名征集会上,大家提出了很多名字。最后按大家的评选次序,将十几个名字排列成表,上报给商标律师。排在第一位的是Silk(丝绸)。尽管大家都喜欢这个名字,但遭到JamesGosling的坚决反对。排在第二和第三的都没有通过律师这一关。只有排在第四位的名字、得到了所有人的认可和律师的通过,这个名字就是Java。
  10多年来,Java就像爪哇咖啡一样誉满全球,成为实至名归的企业级应用平台的霸主。而Java语言也如同咖啡一般醇香动人。
  Java语言特点
  Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
  当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java到底有何神奇之处呢?
  Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。
  在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力。SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都心生感叹:噢,这正是我想要的!于是Java成了一颗耀眼的明星,丑小鸭一下子变成了白天鹅。
  〔编辑本段〕
  Java主要特性
  1、Java语言是简单的。Java语言的语法与C语言和C语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
  2、Java语言是一个面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。
  3、Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(Java。net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
  4、Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。
  5、Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
  6、Java语言是体系结构中立的。Java程序(后缀为Java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。
  7、Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSIC实现的。
  8、Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
  9、Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(JustInTime)编译器技术的发展越来越接近于C。
  10、Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable)的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
  11、Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
  Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。
  Java相关技术
  1、JDBC(JavaDatabaseConnectivity)提供连接各种关系数据库的统一接口,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序,同时,JDBC也是个商标名。
  2、EJB(EnterpriseJavaBeans)使得开发者方便地创建、部署和管理跨平台的基于组件的企业应用。
  3、JavaRMI(JavaRemoteMethodInvocation)用来开发分布式Java应用程序。一个Java对象的方法能被远程Java虚拟机调用。这样,远程方法激活可以发生在对等的两端,也可以发生在客户端和服务器之间,只要双方的应用程序都是用Java写的。
  4、JavaIDL(JavaInterfaceDefinitionLanguage)提供与CORBA(CommonObjectRequestBrokerArchitecture)的无缝的互操作性。这使得Java能集成异构的商务信息资源。
  5、JNDI(JavaNamingandDirectoryInterface)提供从Java平台到的统一的无缝的连接。这个接口屏蔽了企业网络所使用的各种命名和目录服务。
  6、JMAPI(JavaManagementAPI)为异构网络上系统、网络和服务管理的开发提供一整套丰富的对象和方法。
  7、JMS(JavaMessageService)提供企业消息服务,如可靠的消息队列、发布和订阅通信、以及有关推拉(PushPull)技术的各个方面。
  8、JTS(JavatransactionService)提供存取事务处理资源的开放标准,这些事务处理资源包括事务处理应用程序、事务处理管理及监控。
  在Java技术中,值得关注的还有JavaBeans,它是一个开放的标准的组件体系结构,它独立于平台,但使用Java语言。一个JavaBean是一个满足JavaBeans规范的Java类,通常定义了一个现实世界的事物或概念。一个JavaBean的主要特征包括属性、方法和事件。通常,在一个支持JavaBeans规范的开发环境(如SunJavaStudio和IBMVisualAgeforJava)中,可以可视地操作JavaBean,也可以使用JavaBean构造出新的JavaBean。JavaBean的优势还在于Java带来的可移植性。现在,EJB(EnterpriseJavaBeans)将JavaBean概念扩展到Java服务端组件体系结构,这个模型支持多层的分布式对象应用。除了JavaBeans,典型的组件体系结构还有DCOM和CORBA,关于这些组件体系结构的深入讨论超出了本书的范围。
  Java开源项目
  SpringFramework【Java开源J2EE框架】
  Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的InversionofControl容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他ORmapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务如果你需要还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVCWeb框架。【SpringIDE:Eclipse平台下一个辅助开发插件】。
  WebWork【Java开源Web框架】
  WebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EEWeb框架。WebWork目前最新版本是2。1,现在的WebWork2。x前身是RickardOberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNLtheObjectGraphNotationLanguage),IoC(InversionofControl倒置控制)容器等。WebWork2建立在Xwork之上,处理HTTP的响应和请求。WebWork2使用ServletDispatcher将HTTP请求的变成Action(业务层Action类),session(会话)application(应用程序)范围的映射,request请求参数映射。WebWork2支持多视图表示,视图部分可以使用JSP,Velocity,FreeMarker,JasperReports,XML等。在WebWork2。2中添加了对AJAX的支持,这支持是构建在DWR与Dojo这两个框架的基础之上。【EclipseWork:用于WebWork辅助开发的一个Eclipse插件】
  Struts【Java开源Web框架】
  Struts是一个基于SunJ2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(messageresources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE:用于Struts辅助开发的一个Eclipse插件】
  Hibernate【Java开源持久层框架】
  Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在ServletJSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:【HibernateSynchronizer】【MiddlegenIDE】
  Quartz【Java开源Job调度】
  Quartz是OpenSymphony开源组织在Jobscheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的Java组件或EJBs。Quartz的最新版本为Quartz1。5。0。
  Velocity【Java开源模板引擎】
  Velocity是一个基于Java的模板引擎(templateengine)。它允许任何人仅仅简单的使用模板语言(templatelanguage)来引用由Java代码定义的对象。当Velocity应用于web开发时,界面设计人员可以和Java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由Java程序开发人员关注业务逻辑编码。Velocity将Java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbineweb开发架构提供模板服务(templateservice)。VelocityTurbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。【VeloEclipse:Velocity在Eclipse平台下的一个辅助开发插件】
  IBATIS【Java开源持久层框架】
  使用ibatis提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象,这一层与通过Hibernate实现ORM而言基本一致,而对于具体的数据操作,Hibernate会自动生成SQL语句,而ibatis则要求开发者编写具体的SQL语句。相对Hibernate等全自动ORM机制而言,ibatis以SQL开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。作为全自动ORM实现的一种有益补充,ibatis的出现显得别具意义。
  CompiereERPamp;CRM【Java开源ERP与CRM系统】
  CompiereERPamp;CRM为全球范围内的中小型企业提供综合型解决方案,覆盖从客户管理、供应链到财务管理的全部领域,支持多组织、多币种、多会计模式、多成本计算、多语种、多税制等国际化特性。易于安装、易于实施、易于使用。只需要短短几个小时,您就可以使用申购采购发票付款、报价订单发票收款、产品与定价、资产管理、客户关系、供应商关系、员工关系、经营业绩分析等强大功能了。
  RollerWeblogger【Java开源Blog博客】
  这个weblogging设计得比较精巧,源代码是很好的学习资料。它支持weblogging应有的特性如:评论功能,所见即所得HTML编辑,TrackBack,提供页面模板,RSSsyndication,blogroll管理和提供一个XMLRPC接口。
  Eclipse【Java开源开发工具】
  Eclipse平台是IBM向开放源码社区捐赠的开发框架,它之所以出名并不是因为IBM宣称投入开发的资金总数4千万美元,而是因为如此巨大的投入所带来的成果:一个成熟的、精心设计的以及可扩展的体系结构。
  NetBeans【Java开源开发工具】
  NetBeansIDE是一个为软件开发者提供的自由、开源的集成开发环境。您可以从中获得您所需要的所有工具,用Java、CC甚至是Ruby来创建专业的桌面应用程序、企业应用程序、web和移动应用程序。此IDE可以在多种平台上运行,包括Windows、Linux、MacOSX以及Solaris;它易于安装且非常方便使用。
  XPlanner【Java开源项目管理】
  XPlanner一个基于Web的XP团队计划和跟踪工具。XP独特的开发概念如iteration、userstories等,XPlanner都提供了相对应的的管理工具,XPlanner支持XP开发流程,并解决利用XP思想来开发项目所碰到的问题。XPlanner特点包括:简单的模型规划,虚拟笔记卡(Virtualnotecards),iterations、userstories与工作记录的追踪,未完成stories将自动迭代,工作时间追踪,生成团队效率,个人工时报表,SOAP界面支持。
  HSQLDB【Java开源DBMS数据库】
  HSQLDB(HypersonicSQL)是纯Java开发的关系型数据库,并提供JDBC驱动存取数据。支持ANSI92标准SQL语法。而且他占的空间很小。大约只有160K,拥有快速的数据库引擎。
  Liferay【Java开源Portal门户】
  代表了完整的J2EE应用,使用了Web、EJB以及JMS等技术,特别是其前台界面部分使用Struts框架技术,基于XML的portlet配置文件可以自由地动态扩展,使用了WebServices来支持一些远程信息的获取,使用ApahceLucene实现全文检索功能。
  JetSpeed【Java开源Portal门户】
  Jetspeed是一个开放源代码的企业信息门户(EIP)的实现,使用的技术是Java和XML。用户可以使用浏览器,支持WAP协议的手机或者其它的设备访问Jetspeed架设的信息门户获取信息。Jetspeed扮演着信息集中器的角色,它能够把信息集中起来并且很容易地提供给用户。
  JOnAS【Java开源J2EE服务器】
  JOnAS是一个开放源代码的J2EE实现,在ObjectWeb协会中开发。整合了Tomcat或Jetty成为它的Web容器,以确保符合Servlet2。3和JSP1。2规范。JOnAS服务器依赖或实现以下的JavaAPI:JCA、JDBC、JTA、JMS、JMX、JNDI、JAAS、JavaMail。
  JFox3。0【Java开源J2EE服务器】
  BJFox是OpenSourceJavaEEApplicationServer,致力于提供轻量级的JavaEE应用服务器,从3。0开始,JFox提供了一个支持模块化的MVC框架,以简化EJB以及Web应用的开发!如果您正在寻找一个简单、轻量、高效、完善的JavaEE开发平台,那么JFox正是您需要的。
  JavaIDE
  当今最流行的是Eclipse,Myeclipse,Jbuilder2006,Jdeveloper,Netbeans等。
  就业方向:
  可以从事JSP网站开发、Java编程、Java游戏开发、Java桌面程序设计,以及其他与Java语言编程相关的工作。可进入电信、银行、保险专业软件开发公司等从事软件设计和开发工作。
  Java与CC的差异
  B熟悉C语言和C语言的读者一定想搞清楚这个问题,实际上,Java确实是从C语言和C语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物。比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言,C语言完全相同。尽管如此,Java和C语言,C语言又有许多差别,主要表现在如下几个方面:
  (1)Java中对内存的分配是动态的,它采用面向对象的机制,采用运算符new为每个对象分配内存空间,而且,实际内存还会随程序运行情况而改变。程序运行中,每个,Java系统自动对内存进行扫描,对长期不用的空间作为垃圾进行收集,使得系统资源得到更充分地利用。按照这种机制,程序员不必关注内存管理问题,这使Java程序的编写变得简单明了,并且避免了了由于内存管理方面的差错而导致系统出问题。而C语言通过malloc()和free()这两个库函数来分别实现分配内在和释放内存空间的,C语言中则通过运算符new和delete来分配和释放内存。在C和C这仲机制中,程序员必须非常仔细地处理内存的使用问题。一方面,如果对己释放的内存再作释放或者对未曾分配的内存作释放,都会造成死机;而另一方面,如果对长期不用的或不再使用的内存不释放,则会浪费系统资源,甚至因此造成资源枯竭。
  (2)Java不在所有类之外定义全局变量,而是在某个类中定义一种公用静态的变量来完成全局变量的功能。
  (3)Java不用goto语句,而是用trycatchfinally异常处理语句来代替goto语句处理出错的功能。
  (4)Java不支持头文件,面C和C语言中都用头文件来定义类的原型,全局变量,库函数等,这种采用头文件的结构使得系统的运行维护相当繁杂。
  (5)Java不支持宏定义,而是使用关键字final来定义常量,在C中则采用宏定义来实现常量定义,这不得于程序的可读性。
  (6)Java对每种数据类型都分配固定长度。比如,在Java中,int类型总是32位的,而在C和C中,对于不同的平台,同一个数据类型分配不同的字节数,同样是int类型,在PC机中为二字节即16位,而在VAX11中,则为32位。这使得C语言造成不可移植性,而Java则具有跨平台性(平台无关性)。
  (7)类型转换不同。在C和C中,可通过指针进行任意的类型转换,常常带来不安全性,而在Java中,运行时系统对对象的处理要进行类型相容性检查,以防止不安全的转换。
  (8)结构和联合的处理。在C和C中,结构和联合的所有成员均为公有,这就带来了安全性问题,而在Java中根本就不包含结构和联合,所有的内容都封装在类里面。
  (9)Java不再使用指针。指针是C和C中最灵活,也最容易产生错误的数据类型。由指针所进行的内存地址操作常会造成不可预知的错误,同时通过指针对某个内存地址进行显式类型转换后,可以访问一个C中的私有成员,从而破坏安全性。而Java对指针进行完全地控制,程序员不能直接进行任何指针操作。
  Java学习
  Java近10年来计算机软件发展过程中的传奇,其在众多开发者心中的地位就如屠龙刀、倚天剑。
  Java是个平台,我只想说说我对学好Java的一点看法,希望对初学者有所帮助。
  1。思考一下
  学习Java之前,先别急,静下心来好好想想:
  1)你对学习Java是否有兴趣?
  2)你是否能静下心来坚持不懈地学习?
  嗯,这是个容易但又绝对不应该忽略的问题,你确信自己对Java感兴趣、而且又有吃苦的准备,那你才可能学好Java!如果具备这两点条件,就请继续往下看
  2。准备一下
  请不要把你的学习Java之路和其它计算机技术分开看待,技术的联系往往是千丝万缕的,你应该掌握一些学习Java所涉及的基础知识,对于CLASSPATH要怎么设置啊、跪求JDK下载地址等等问题,你不该问,因为Internet上太多答案了,甚至换个角度说,你是不是还不适合直接学习编程?
  1)买本Java学习用书。
  JDK6正式版刚刚推出,市面上你暂时买不到JDK6的书籍,但我仍推荐你买一本适合入门的、较新JDK版本的Java书籍,那么,你现在选择一本讲述JDK5的入门书籍还是有条件的。我可以推荐一些入门书,但是我不打算这么做,因为合我口味的,不一定适合你。但无论如何,《ThingInJava》绝对不应该作为你入门Java的第一本书籍!
  记住,网络上学习Java的资源很多,但基本不够系统,拥有一本Java入门书籍,是你系统学习Java的基础。
  2)准备Java学习环境。
  准备你的学习环境,很简单,安装JDK6,然后用类似UltraEdit、EditPlus的文本编辑器配置你的学习环境,Internet上有很多关于如何配置的文章。初学Java,不建议用IDE工具,通过一行行的敲代码,你会碰到很多问题,只有这样,你才能学会怎样解决问题,并加深自己对Java的理解。
  准备好后,开始进入激动人心的Java学习里程吧!
  3。Java基础学习之路
  学习Java的过程虽然辛苦些,但又是处处有精彩!学习过程中的心态一定要保持专一,网上关于语言间的PK到处都是,别被浮躁影响!认准了Java,你就坚持!克服心魔,恒心最终会给你回报的。
  Java的体系分为JavaSE、JavaEE和JavaME(JDK5。0以前分别叫J2SE、J2EE和J2ME),Java的敲门砖就是JavaSE了,也就是你要入门学习的内容,不论你日后是选择哪个体系领域作为发展方向,你都得从JavaSE起步。
  学习JavaSE,打好Java基础;如果想学JavaEE(对不起,我不了解JavaME,所以我无法涉及JavaME的相关内容),对于AWT、Swing是否要学习呢,我个人是觉得还是要知道其所以然的,特别是其事件处理模式,我强烈建议初学者一定要弄清楚,其他具体的开发就不一定要全面掌握了,毕竟AWT、Swing方面的内容足够用几本大部头的书才能描述详尽;当然,如果你的工作就是做AWT、Swing开发,那就另当别论了。
  IO、Thread都是基础之一。
  4。JavaEE学习之路
  学习了JavaSE,还只是完成万里长征的第一步。
  接下来选择学习JavaEE或是JavaME(或者你还想不断深入学习JavaSE,只要你喜欢,你可以一直深入下去,就像前面所说的,我不会讲到JavaME的学习);估计选择JavaEE方面的学习者会多一些,JavaEE所涉及技术非常多,考虑到初学者的接受程度,我会尽量从最常用的角度来介绍。
  学习JavaEE,在开发环境上不建议再用文本编辑器,我感觉NetBeans5。5(目前最高正式版本)很适合初学者,我个人也很喜欢NetBeans,如果你喜欢用别的IDE如Eclipse,都没问题,看自己喜欢吧。
  4。1学习JSPServlet
  JavaEE最高版本目前是5。0版本。
  在JavaEE中,首先要学习JSPServlet(结合Tomcat、MySQL)技术,建议JSP1。22。X的知识都要掌握,毕竟现在很多的在用系统都还是基于JSP1。2,学习JSP,还必须掌握一些外延技术,如:你还得掌握HTML基础知识,最好再掌握些JavaScript(目前正火的AJAX技术之一)、CSS的技术,而了解XML是必不可少的(至少描述性配置信息是通过XML来描述的)。在学习JSPServlet过程中,应该结合学习JDBC、数据库开发技术,毕竟绝大多数JavaWeb项目都是和数据库紧密结合的。
  4。2学习数据库开发技术
  这里我想重点说一下数据库开发技术,数据库技术是做业务系统必备技能,JavaWeb开发人员最低程度都应该掌握SQL语句的使用!数据库技术大体可分为DBA技术和数据库开发技术,对于开发而言,应侧重数据库开发技术,而数据库基本操作,也是要掌握的。常用数据库有DB2、Oracle、SQLServer、MySQL等,你可以结合实际需要,选择一种数据库,并花大力气掌握其开发技术。
  记住,学习数据库开发技术和学习JavaEE,是相对独立的,你可以在学习JSPServlet的同时,学习数据库开发技术(如SQL语句等),或者先学数据库开发技术,之后再学习JSPServlet。
  4。3学习JavaEE其它开发技术
  再往后,可以学习一些EJB的知识,目前EJB最新版本是3。0,其和前面的2。X版本相比,有较大不同,考虑到目前EJB2。X还有很大的应用市场,建议结合学习EJB2。X3。0。在学习EJB过程中,应同时掌握一种企业级应用服务器的使用(如WebSphere、Weblogic、SunApplcationServer或JBOSS等,目前SunApplcationServer9。X和JBOSS都可支持EJB3。0)。
  之后的学习中,再逐渐扩展到其他JavaEE技术。
  5。之后
  等你对JavaEE有些感悟的时候,你自然就会想不断扩展你的知识面,这时候你可以学习Spring、Hibernate,以及各种Web框架(如Struts、JSF、Webwork或是Tapestry等)。
  随着技术、经验的不断积累,你会逐步关注分析、设计等更高层次的知识,这时候,你可进一步学习相关的UML、模式等知识(积累了一定经验,你就可以安排自己学习这些知识了)。
  6。小结
  永远记住:自始至终,实践是学习Java技术历程中极其重要的一环。脱离了实践,是学不好技术的!
  Java学习、实践之路依然没有银弹,况且一步步走来,要学的东西很多,勤奋是金!
  善于利用Internet上众多的资源,多吸取些别人的经验。

请一天假,为了不去回忆今天在网上看了一个老套的电影片断改编,水准比胡戈的差不了多少,里面有一句话不错,他说也许我们今天该请一天假,仅仅是为了不去回忆。我觉得我应当做点让我不去回忆的事情,比如和……王睿楼船下益州(金陵王气黯然收)王睿楼船下益州(金陵王气黯然收)西塞山怀古唐代:刘禹锡王濬楼船下益州,金陵王气黯然收。千寻铁锁沉江底,一片降幡出石头。人世几回伤往事,山形依旧枕寒流。……书桌朋友我的书桌上放着一盆可爱绿萝。是我多年的好朋友,每当写作业时她总是那么安静的陪着我,每当我的双目开小差时,总是喜欢她身上停留片刻欣赏她的美。瞧,它绿得如此新鲜,一片嫩绿的叶子挨在……生病了,555当我迷迷糊糊地被拖到诊所的时候,我终于发现BACKHOME也不是什么好事,至少在我回家来的第二天就光荣地生病了。看来乐极生悲这个成语就是为现在的我量身打造的嘛!!!实在想……天猫超市十一开售飞天茅台1499元一瓶9月30日上午消息,天猫超市今日宣布国庆期间开售茅台。从10月1日起,每天10点和22点,500ml装53度飞天茅台将以1499元瓶的价格在天猫超市限量开售。这也是茅台酒首次面……苯囡亼,某某。苯囡亼,某某。她整天只知道讓莪開吣。每天噈會張著(嘴巴)讓莪來麼麼。卻苁來吥對莪(喓求)什麼。雖然她(嘴巴)說著什麼兜吥喓莪給她。衹希望莪開吣噈荇。……此情,与寂寞无关当我坐在这里,满心的彷徨与无助与寂寞没有关系。外边人潮涌动,好象到了上香的日子吧,外边的人象潮水一般涌动天气好象还不错,有太阳,阵阵微风,吹在身上,凉凉的,很……在IRELAND的日子在IRELAND的日子,很苦,脸上在笑,心中流着泪。在外国的日子,很累,身体累,心的历程更累。在爱尔兰的日子,很烦,满腔心事无人倾诉。在爱尔兰的日子,在无人欣赏的夜晚,把寂寞当……空虚孤独的挑战一人一屋一桌一音像一书一本子一笔,每天重复过着起床早餐晨功健身台词做饭吃饭健身看书写作台词声乐看电影吃晚饭出门观察人物写影评和规划第二天日程安排健身洗澡睡觉的生活。却每天的规划……孤独的狼王知道加内特是在六年前,那时候的我只是一个中学生,只知道什么是圆周率,什么是球体体积公式,什么时候要考试,什么时候应该读书。NBA之于我只是三个简单的英文字母,它究竟代表着一个什……变频空调哪个牌子好变频空调品牌推荐选择详解现在的空调市场已经远不如从前了,因为现在的空调品牌变的越来越多,所以市场已经接近饱和,而且也变的混乱,大家一定要擦亮眼睛。在众多的空调的种类之中,变频空调是目前比较受欢迎的,但……Win10更新失败报错0xc1900403怎么办Win10更win10更新失败报错ldquo;0xc1900403rdquo;怎么办?最近Win1017035预览版自动更新至17040和17046预览版的时候,会遇到Win10更新失败的……
在歌声里希望能听到你的声音今晚听了一个晚上的歌,都是你的喜欢的,我不知道现在自己是怎么的心情,也不会知道你的心情,一直这样的听下去,一首又一首都是在你的空间里听的,也不知道这些歌你是怎么找到的,有些我自……华为MateS什么配置参数?华为MateS标配有什么?华为MateS什么配置参数在配置参数方面,华为MateS拥有一块5。5英寸的屏幕,分辨率为1080p。而处理器方面则采用了华为最新的海思Kirin935处理器,由4颗2。……委屈昨天碰到个神经病女人,医生帮她多开了很多药,我好心好意和她说让她上去让医生在处方上写明原因,然后才能给她,结果她上去转了一圈下来说医生写在病历卡上不肯写在处方上,那我说我不能发……搭上场景快车的卡萨帝,万元以上份额超过7成文章来源:科技讯品质家电消费时代已来临。中怡康发布的47周数据显示,万元以上洗衣机占比达12。7,同比增长32,另调查显示,分区洗这一品类更受高端家庭青睐。而对于分……记录一下我写的第3篇高中心情人生本来就有很多事是徒劳无功的。就像青春,虽然徒劳,却在人的心里住得最久,挥之不去,怀念那段青涩年华,怀念它的那些年YouAretheAppleofMyEye这个名……身份证查酒店跟谁住房记录(查一个人住过的宾馆怎么查)身份证查酒店跟谁住房记录(查一个人住过的宾馆怎么查)实践日子中酒店的入住记载怎样查?假定说你有入住宾馆记载,那么就可以直接进入处理网络去查询自己的一个个人信息,……萨米的金发作文600字天,亮了。萨米早就醒了,她在床上翻来覆去地想着什么。过了一会儿,萨米突然跳下床,拉开窗帘朝外张望着,她笑了爸爸妈妈和哥哥往家这边开来了,他们已经分别三天了。原来,是……面朝大海面朝大海,风有些凉02年的那个秋天。走下火车,天微亮,不知道自己离海这么近。首先感受到的是迎面而来的风,湿润清新的空气让自己感觉是那样的舒服。这就是青岛给我的第一印象,记……小山羊找工作从前,有一只小山羊在找工作,由于小山羊的年龄比较小,所以没人原意让它打工。小山羊没有放弃,它找呀找。从衣服店走到鞋店。从鞋店又走到玩具店,又从玩具店走到餐厅,终于,餐厅可……倒霉的两天唉,看来我的运气真是差!用一句话来说就是天嘛是用来刮风下雨,地嘛是用来长花长草的,而我则是用来告诉世人原来一个人可以这样倒霉的。昨晚居然打牌时被班主任来宿舍捉住,晕。由这……Excel的财务函数是什么Excel的财务函数是指用来进行财务处理的函数。可以进行一般的财务计算,如确定贷款的支付额、投资的未来值或净现值,以及债券或息票的价值。在财务函数中有两个常用变量:f和b……妈妈宝贝永远是妈妈的骄傲!我家的小宝贝跟着婆婆回他爸爸的故里已经有天了,出生以来第一次和妈妈分开,也是分开的时间最长的,妈妈每天都好想你啊,每天都在悄悄地和你说话,不知道我的宝贝听到了没有?也不知道宝贝……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网