1.什么是Java?
2.什么是JAVA?
3.javaè¯è¨çåå±åå²
4.请问初学者应该学什么?
什么是Java?
Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。
Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、图片计数轮播源码游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。JAVA战狼班它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,以“Java”的名称正式发布。
Java 编程语言的风格十分接近C、C++语言。Java是一个纯的面向对象的程序设计语言,它继承了 C++ 语言面向对象技术的核心,Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。但在 J2SE1.4.2 发布后,Java 的执行速度有了大幅提升。
什么是JAVA?
Java是由Sun Microsystems公司于年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.4,最近版本为Java1.7。
Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。
年月日,oracle(甲骨文)收购sun,java因此并归甲骨文公司。
[编辑本段]JAVA-名字起源
一天,几位Java成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡馆喝着Java(爪哇)咖啡,有一个人灵机一动说就叫Java怎样,这个提议得到了其他人的赞同,于是,Java这个名字就这样传开了。原来看SUN的JAVA标识没去多想,现在看看,这不就是dk源码论坛一杯正冒着热气的咖啡吗?
[编辑本段]Java语言特点
Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
当年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java到底有何神奇之处呢?
Java语言其实最早诞生于年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。
在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力。SUN的工程师敏锐地察觉到了这一点,从年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司年正式以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的运行环境是用ANSI C实现的。
8、Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式, 然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
9、Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。
、Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。 Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。
、Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。
[编辑本段]Java相关技术
1、JDBC(Java Database Connectivity)提供连接各种关系数据库的统一接口。
2、EJB(Enterprise JavaBeans)使得开发者方便地创建、部署和管理跨平台的基于组件的企业应用。
3、Java RMI(Java Remote Method Invocation)用来开发分布式Java应用程序。一个Java对象的方法能被远程Java虚拟机调用。这样,远程方法激活可以发生在对等的两端,也可以发生在客户端和服务器之间,只要双方的应用程序都是用Java写的。
4、Java IDL(Java Interface Definition Language) 提供与CORBA(Common Object Request Broker Architecture)的无缝的互操作性。这使得Java能集成异构的商务信息资源。
5、JNDI(Java Naming and Directory Interface)提供从Java平台到的统一的无缝的连接。这个接口屏蔽了企业网络所使用的各种命名和目录服务。
6、JMAPI(Java Management API)为异构网络上系统、网络和服务管理的开发提供一整套丰富的对象和方法。
7、社区人脉源码JMS(Java Message Service)提供企业消息服务,如可靠的消息队列、发布和订阅通信、以及有关推拉(Push/Pull)技术的各个方面。
8、JTS(Java transaction Service)提供存取事务处理资源的开放标准,这些事务处理资源包括事务处理应用程序、事务处理管理及监控。
在Java技术中,值得关注的还有JavaBeans,它是一个开放的标准的组件体系结构,它独立于平台,但使用Java语言。一个JavaBean是一个满足JavaBeans规范的Java类,通常定义了一个现实世界的事物或概念。一个JavaBean的主要特征包括属性、方法和事件。通常,在一个支持JavaBeans规范的开发环境(如Sun Java Studio 和IBM VisualAge for Java)中,可以可视地操作JavaBean,也可以使用JavaBean构造出新的JavaBean。JavaBean的优势还在于Java带来的可移植性。现在,EJB (Enterprise JavaBeans) 将JavaBean概念扩展到Java服务端组件体系结构,这个模型支持多层的分布式对象应用。除了JavaBeans,典型的组件体系结构还有DCOM和CORBA,关于这些组件体系结构的深入讨论超出了本书的范围。
[编辑本段]Java开源项目
Spring Framework Java开源 J2EE框架
Spring 是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的 Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了 Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。 Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的 aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。SpringIDE:Eclipse平台下一个辅助开发插件.
WebWork Java开源 Web框架
WebWork 是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。 Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Notation Language),IoC(Inversion of Control倒置控制)容器等。 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 是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。StrutsIDE:用于Struts辅助开发的一个Eclipse插件
Hibernate Java开源 持久层框架
Hibernate 是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的黄色引流源码客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:Hibernate SynchronizerMiddlegenIDE
Quartz Java开源 Job调度
Quartz 是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的Java组件或 EJBs。Quartz的最新版本为Quartz 1.5.0。
Velocity Java开源 模板引擎
Velocity 是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。 Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。 VeloEclipse :Velocity在Eclipse平台下的一个辅助开发插件
IBATIS Java开源 持久层框架
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象, 这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显 得别具意义。
Compiere ERP&CRM Java开源ERP与CRM系统
Compiere ERP&CRM为全球范围内的中小型企业提供综合型解决方案,覆盖从客户管理、供应链到财务管理的全部领域,支持多组织、多币种、多会计模式、多成本计算、多语种、多税制等国际化特性。易于安装、易于实施、易于使用。只需要短短几个小时,您就可以使用申购-采购-发票-付款、报价-订单-发票-收款、产品与定价、资产管理、客户关系、供应商关系、员工关系、经营业绩分析等强大功能了。
Roller Weblogger Java开源 Blog博客
这个weblogging 设计得比较精巧,源代码是很好的学习资料。它支持weblogging应有的特性如:评论功能,所见即所得HTML编辑,TrackBack,提供页面模板,RSS syndication,blogroll管理和提供一个XML-RPC 接口。
Eclipse Java开源 开发工具
Eclipse平台是IBM向开放源码社区捐赠的开发框架,它之所以出名并不是因为IBM宣称投入开发的资金总数 —4千万美元,而是因为如此巨大的投入所带来的成果:一个成熟的、精心设计的以及可扩展的体系结构。
NetBeans Java开源 开发工具
NetBeans IDE 是一个为软件开发者提供的自由、开源的集成开发环境。您可以从中获得您所需要的所有工具,用 Java、C/C++ 甚至是 Ruby 来创建专业的桌面应用程序、企业应用程序、web 和移动应用程序。此 IDE 可以在多种平台上运行,包括 Windows、Linux、Mac OS X 以及 Solaris;它易于安装且非常方便使用。
XPlanner Java开源 项目管理
XPlanner 一个基于Web的XP团队计划和跟踪工具。XP独特的开发概念如iteration、user stories等,XPlanner都提供了相对应的的管理工具,XPlanner支持XP开发流程,并解决利用XP思想来开发项目所碰到的问题。 XPlanner特点包括:简单的模型规划,虚拟笔记卡(Virtual note cards),iterations、user stories与工作记录的追踪,未完成stories将自动迭代,工作时间追踪,生成团队效率,个人工时报表,SOAP界面支持。
HSQLDB Java开源 DBMS数据库
HSQLDB(Hypersonic SQL)是纯Java开发的关系型数据库,并提供JDBC驱动存取数据。支持ANSI- 标准 SQL语法。而且他占的空间很小。大约只有K,拥有快速的数据库引擎。
Liferay Java开源 Portal门户
代表了完整的J2EE应用,使用了Web、EJB以及JMS等技术,特别是其前台界面部分使用Struts 框架技术,基于XML的portlet配置文件可以自由地动态扩展,使用了Web Services来支持一些远程信息的获取,使用 Apahce Lucene实现全文检索功能。
JetSpeed Java开源 Portal门户
Jetspeed 是一个开放源代码的企业信息门户(EIP)的实现,使用的技术是Java和XML。用户可以使用浏览器,支持WAP协议的手机或者其它的设备访问Jetspeed架设的信息门户获取信息。Jetspeed扮演着信息集中器的角色,它能够把信息集中起来并且很容易地提供给用户。
JOnAS Java开源 J2EE服务器
JOnAS 是一个开放源代码的J2EE实现,在ObjectWeb协会中开发。整合了Tomcat或Jetty成为它的Web容器,以确保符合Servlet 2.3和JSP 1.2规范。JOnAS服务器依赖或实现以下的Java API:JCA、JDBC、JTA 、JMS、JMX、JNDI、JAAS、JavaMail 。
JFox3.0 Java开源 J2EE服务器
JFox 是 Open Source Java EE Application Server,致力于提供轻量级的Java EE应用服务器,从3.0开始,JFox提供了一个支持模块化的MVC框架,以简化EJB以及Web应用的开发! 如果您正在寻找一个简单、轻量、高效、完善的Java EE开发平台,那么JFox正是您需要的。
[编辑本段]Java IDE
当今最流行的是Eclipse,Myeclipse,Jbuilder,Jdeveloper,Netbeans等。
[编辑本段]Java图书
Java编程思想(第4版)
作 者: (美)埃克尔 著,陈昊鹏 译
出 版 社: 机械工业出版社
出版时间: -6-[1]1 字 数: 版 次: 1 页 数: 印刷时间: // 开 本: 印 次: 纸 张: 胶版纸 I S B N : 包 装: 平装
[编辑本段]Java版本历史
年5月日,Java语言诞生
年1月,第一个JDK-JDK1.0诞生
年4月,个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术
年9月,约8.3万个网页应用了JAVA技术来制作
年2月日,JDK1.1发布
年4月2日,JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录
年9月,JavaDeveloperConnection社区成员超过十万
年2月,JDK1.1被下载超过2,,次
年月8日,JAVA2企业平台J2EE发布
年6月,SUN公司发布Java的三个版本:标准版(J2SE)、企业版(J2EE)和微型版(J2ME)
年5月8日,JDK1.3发布
年5月日,JDK1.4发布
年6月5日,NOKIA宣布,到年将出售1亿部支持Java的手机
年9月日,J2EE1.3发布
年2月日,J2SE1.4发布,自此Java的计算能力有了大幅提升
年9月日:PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0
年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME
年月,SUN公司发布JRE6.0
目前JDK7.0已经在研发中,已经有测试版在 / 可以下载使用
[编辑本段]Java与Internet
我们知道,早先的www仅可以传送文本和,Java的出现实现了互动的页面,是一次伟大的革命。
Java并不是为Internet、www而设计的,它也可以用来编写独立的应用程序。Java是一种面向对象语言,Java语言类似于C++语言,所以已熟练掌握C++语言的编程人员,再学习Java语言就容易得多!Java程序需要编译,它被放置在Internet服务器上,当用户访问服务器时,Java程序被下载到本地的用户机上,由浏览器解释运行。实际上有两种Java程序:一种Java应用程序是一个完整的程序,如Web浏览器。另一种Java小应用程序是运行于Web浏览器中的一个程序。
Java程序和它的浏览器HotJava,提供了可让你的浏览器运行程序的方法。你能从你的浏览器里直接播放声音,你还能播放页面里的动画,Java还能告诉你的浏览器怎样处理新的类型文件。当我们能在 baud线上传输视频图象时,HotJava将能显示这些视频。
[编辑本段]Java与电子商务
电子商务是当今的热门话题,然而传统的编程语言难以胜任电子商务系统,电子商务要求程序代码具有基本的要求:安全、可靠、同时要求能与运行于不同平台的机器的全世界客户开展业务。Java以其强安全性、平台无关性、硬件结构无关性、语言简洁同时面向对象,在网络编程语言中占据无可比拟的优势,成为实现电子商务系统的首选语言。
[编辑本段]Java的八大基本数据类型及其包装类
原始类型 包装类 原始类型所占的字节数
short Short 2个字节
int Integer 4个字节
long Long 8个字节
float Float 4个字节
double Double 8个字节
byte Byte 1个字节
char Character 2个字节
boolean Boolean 这个试编译环境而定
[编辑本段]第一个JAVA程序HelloWorld
//文件名 HelloWorld.java
//声明一个类
public class HelloWorld {
//声明一个方法
public static void main(String[] args){ //程序的入口
//输出
System.out.println("hello world!");
}
}
//例子
package Text;
public class Test(
public static void main(String[] args){
short d = ; //短整型
System.out.println(d); //输出d
long c = ; //长整型
System.out.println(d); //输出c
int z = ; //整型
System.out.println(z); //输出z
char e = '我'; //字符型
System.out.println(e);//输出e
}
)
javaè¯è¨çåå±åå²
æ©æçJavaãã
Dukeï¼Javaè¯è¨çå祥ç©è¯è¨æå¼å§åªæ¯å¤ªé³å¾®ç³»ç»ï¼Sun MicroSystemsï¼å ¬å¸å¨å¹´æå¼å§ç 究çä¸ä¸ªå é¨é¡¹ç®ã太é³å¾®ç³»ç»å ¬å¸çä¸ä¸ªå«åå¸ç¹éå ?诺顿çå·¥ç¨å¸è¢«å ¬å¸èªå·±å¼åçC++åCè¯è¨ç¼è¯å¨æå¾ç¦å¤´çé¢ï¼å ä¸ºå ¶ä¸çAPIæå ¶é¾ç¨ãå¸ç¹éå å³å®æ¹ç¨NeXTï¼åæ¶ä»ä¹è·å¾äºç ç©¶å ¬å¸çä¸ä¸ªå«åâStealth计åâç项ç®çæºä¼ããã
âStealth计åâåæ¥æ¹å为âGreen计åâï¼è©¹å§æ¯Â·é«æ¯æå麦å ?èæ丹ä¹å å ¥äºå¸ç¹éå çå·¥ä½å°ç»ãä»ä»¬åå ¶ä»å 个工ç¨å¸ä¸èµ·å¨å å©ç¦å°¼äºå·é¨ç½å¸å å¸æ²ä¸è·¯çä¸ä¸ªå°å·¥ä½å®¤éé¢ç 究å¼åæ°ææ¯ï¼çåä¸ä¸ä»£æºè½å®¶çµï¼å¦å¾®æ³¢çï¼çç¨åºè®¾è®¡ï¼å¤ªé³å ¬å¸é¢ææªæ¥ç§æå°å¨å®¶ç¨çµå¨é¢å大æ¾èº«æãå¢éæåèè使ç¨C++è¯è¨ï¼ä½æ¯å¾å¤æåå æ¬å¤ªé³çé¦å¸ç§å¦å®¶æ¯å°?ä¹ä¼ï¼åç°C++åå¯ç¨çAPIå¨æäºæ¹é¢åå¨å¾å¤§é®é¢ããã
å·¥ä½å°ç»ä½¿ç¨çæ¯å åµç±»åå¹³å°ï¼å¯ä»¥ç¨çèµæºæå ¶æéãå¾å¤æååç°C++太å¤æ以è³å¾å¤å¼åè ç»å¸¸é误使ç¨ãä»ä»¬åç°C++缺å°åå¾åæ¶ç³»ç»ï¼è¿æå¯ç§»æ¤çå®å ¨æ§ãåå¸ç¨åºè®¾è®¡ãåå¤è¿è¡ç»åè½ãæåï¼ä»ä»¬æ³è¦ä¸ç§æäºç§»æ¤å°åç§è®¾å¤ä¸çå¹³å°ããã
æ ¹æ®å¯ç¨çèµéï¼æ¯å°?ä¹ä¼å³å®å¼åä¸ç§éCè¯è¨åMesaè¯è¨å¤§æçæ°è¯è¨ï¼å¨ä¸ä»½æ¥åä¸ï¼ä¹ä¼æå®å«åâæªæ¥âï¼ä»æ议太é³å ¬å¸çå·¥ç¨å¸åºè¯¥å¨C++çåºç¡ä¸ï¼å¼åä¸ç§é¢å对象çç¯å¢ãæåï¼é«æ¯æè¯å¾ä¿®æ¹åæ©å±C++çåè½ï¼ä»èªå·±ç§°è¿ç§æ°è¯è¨ä¸ºC++ ++ --ï¼ä½æ¯åæ¥ä»æ¾å¼äºãä»å°è¦åé åºä¸ç§å ¨æ°çè¯è¨ï¼è¢«ä»å½å为âOakâï¼æ©¡æ ï¼ï¼ä»¥ä»çåå ¬å®¤å¤çæ©¡æ å½åããã
å°±åå¾å¤å¼åæ°ææ¯çç§å¯å·¥ç¨ä¸æ ·ï¼å·¥ä½å°ç»æ²¡æ¥æ²¡å¤å°å·¥ä½å°äºå¹´çå¤å¤©ï¼ä»ä»¬è½å¤æ¼ç¤ºæ°å¹³å°çä¸é¨åäºï¼å æ¬Greenæä½ç³»ç»ï¼Oakçç¨åºè®¾è®¡è¯è¨ï¼ç±»åºåå ¶ç¡¬ä»¶ãæåçå°è¯æ¯é¢åä¸ç§ç±»PDA设å¤ï¼è¢«å½å为Star7ï¼è¿ç§è®¾å¤æé²è³çå¾å½¢çé¢å被称为âDukeâçæºè½ä»£çæ¥å¸®å©ç¨æ·ãå¹´æ3æ¥ï¼è¿å°è®¾å¤è¿è¡äºå±ç¤ºããã
åå¹´æï¼Green计å被转åæäºâFirstPersonæéå ¬å¸âï¼ä¸ä¸ªå¤ªé³å ¬å¸çå ¨èµåå ¬å¸ï¼å¢éä¹è¢«éæ°å®æå°äºå¸æ´é¿å°æãFirstPersonå¢é对建é ä¸ç§é«åº¦äº¤äºç设å¤æå ´è¶£ï¼å½æ¶ä»£å纳åå¸äºä¸ä¸ªå ³äºçµè§æºé¡¶ççå¾æ±æ议书æ¶ï¼Request for proposalï¼ï¼FirstPersonæ¹åäºä»ä»¬çç®æ ï¼ä½ä¸ºå¯¹å¾æ±æè§ä¹¦çååºï¼ æåºäºä¸ä¸ªæºé¡¶çå¹³å°çæè®®ãä½æ¯æ线çµè§ä¸çè§å¾FirstPersonçå¹³å°ç»äºç¨æ·è¿å¤çæ§å¶æï¼å æ¤FirstPersonçææ è´¥ç»äºSGIãä¸3DOå ¬å¸çå¦å¤ä¸ç¬å ³äºæºé¡¶çç交æä¹æ²¡ææåï¼ç±äºä»ä»¬çå¹³å°ä¸è½å¨çµè§å·¥ä¸äº§çä»»ä½æçï¼å ¬å¸è¢«å¹¶å太é³å ¬å¸ããã
å¹´6æã7æé´ï¼å¨ç»åäºä¸åºåæ¶ä¸å¤©çèåæ¿è¡ç讨论åï¼çº¦ç¿°Â·çåã詹å§æ¯Â·é«æ¯æãæ¯å°Â·ä¹ä¼ãå¸ç¹éå ·诺顿ãé¦æ©Â·ç½æ¯å ååéå ·æ¯åºç±³ï¼å¢éå³å®åä¸æ¬¡æ¹åäºåªåçç®æ ï¼è¿æ¬¡ä»ä»¬å³å®å°è¯¥ææ¯åºç¨äºä¸ç»´ç½ãä»ä»¬è®¤ä¸ºéçMosaicæµè§å¨çå°æ¥ï¼å ç¹ç½æ£å¨ååæ ·çé«åº¦äºå¨çè¿æ¯æ¼åï¼èè¿ä¸è¿æ¯æ£æ¯ä»ä»¬å¨æ线çµè§ç½ä¸çå°çãä½ä¸ºååï¼å¸ç¹éå ·诺顿åäºä¸ä¸ªå°åä¸ç»´ç½æµè§å¨ï¼WebRunnerï¼åæ¥æ¹å为HotJavaãããç±äºåæ æç´¢æ¾ç¤ºï¼Oak已被ä¸å®¶æ¾å¡å¶é å注åãäºæ¯åå¹´ï¼Oak被æ¹å为Javaãå½ä½¿ç¨åå è¿å¶ç¼è¾å¨æå¼ç±Javaæºä»£ç ç¼è¯åºçäºè¿å¶æ件ï¼.classæ件ï¼çè¯ï¼æåé¢çä½å°æ¾ç¤ºä¸ºCA FE BA BEï¼å³è¯ç»âCAFE BABEâï¼åå¡å±å®è´ï¼ããã
å¹´æï¼HotJavaåJavaå¹³å°ä¸ºå ¬å¸é«å±è¿è¡æ¼ç¤ºãå¹´ï¼Java 1.0açæ¬å·²ç»å¯ä»¥æä¾ä¸è½½ï¼ä½æ¯JavaåHotJavaæµè§å¨ç第ä¸æ¬¡å ¬å¼åå¸å´æ¯å¨å¹´3ææ¥SunWorld大ä¼ä¸è¿è¡çãåé³å ¬å¸çç§å¦æ导约翰·çå声æJavaææ¯ãè¿ä¸ªåå¸æ¯ä¸ç½æ¯å ¬å¸çæ§è¡å¯æ»è£é©¬å ·å®å¾·æ£®çæ人åå¸ä¸èµ·è¿è¡çï¼å®£å¸ç½æ¯å°å¨å ¶æµè§å¨ä¸å å«å¯¹Javaçæ¯æãå¹´1æï¼åé³å ¬å¸æç«äºJavaä¸å¡éå¢ï¼ä¸é¨å¼åJavaææ¯ãããJavaè¿åµããå¨æµè¡å å¹´ä¹åï¼Javaå¨æµè§å¨ä¸çå°ä½è¢«éæ¥ä¾µèãå®å¨ç®å交äºæ§å¨ç»æ¹é¢çç¨éå·²ç»å®å ¨è¢«Adobeå ¬å¸çFlashææ¤ï¼å¹´Javaå¾ååªè¢«ç¨äºé è游æé£æ ·çæ´ä¸ºå¤æçåºç¨ç¨åºãJavaåæ¶éåå°æ¥èªå¾®è½¯çå对ï¼ä»ä»¬å³å®å¨æ°çæ¬çInternet ExploreråWindowsä¸ä¸åé带Javaå¹³å°ããã
ä¸æ¤ç¸åãå¨ä¸ç»´ç½çæå¡å¨ç«¯åææ设å¤ä¸ï¼Javaåå¾æ´å æµè¡ãå¾å¤ç½ç«å¨å端使ç¨JSPåå ¶ä»çJavaææ¯ããã
å¨æ¡é¢ç³»ç»ä¸ï¼ç¬ç«çJavaç¨åºè¿æ¯ç¸å¯¹å°è§ï¼è¿æ¯å 为Javaå¹³å°çè¿è¡å¼éè¾å¤§ï¼è许å¤äººççµèä¸æ²¡æå®è£ Javaï¼ç±äºç½ç»å¸¦å®½å¨ä»¥åè¾å°ï¼ä¸è½½Javaæ¾ç»æ¯ä¸ªèæ¶çäºæ ãä½æ¯éç计ç®æºè®¡ç®è½åãç½ç»å¸¦å®½å¨å¹´ä¸åå¾äºå¾å¤§çè¿æ¥ï¼åæ¶èææºåç¼è¯å¨çè´¨éå¾å°äºæé«ï¼è®¸å¤åºç¨ç¨åºå¾å°äºå¹¿æ³ç使ç¨
请问初学者应该学什么?
如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!
==============================================
方案一 Basic语言 & Visual Basic
优点
(1)Basic 简单易学,很容易上手。
(2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮的程序。
(3)众多的控件让编程变得象垒积木一样简单。
(4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁。
缺点
(1)Visual Basic 不是真正的面向对象的开发文具。
(2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。
(3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢。
综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB 做出自己的作品。对于那些把编程当做游戏的朋友来说,VB 是您最佳的选择。
Basic/Visual Basic简介
==============================================
方案二 Pascal语言 & Delphi
优点
(1)Pascal语言结构严谨,可以很好地培养一个人的编程思想。
(2)Delphi是一门真正的面向对象的开发工具,并且是完全的可视化。
(3)Delphi使用了真编译,可以让你的代码编译成为可执行的文件,而且编译速度非常快。
(4)Delphi具有强大的数据库开发能力,可以让你轻松地开发数据库。
缺点
Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦。
综述: 方案二比较适合那些具有一定编程基础并且学过Pascal语言的朋友。
Pascal语言简介
Delphi简介
==============================================
方案三 C语言 & Visual C++
优点
(1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。
(2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程。
(3)VC是微软制作的产品,与操作系统的结合更加紧密。
缺点
对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来会有不小的困难。
综述: VC是程序员用的东西。如果你是一个永不满足的人,而且可以在编程上投入很大的精力和时间,那么学习VC你一定不会后悔的。
C语言简介
==============================================
方案四 C++语言 & C++ Builder
优点
(1)C++语言的优点全部得以继承。
(2)完全的可是化。
(3)极强的兼容性,支持OWL、VCL和MFC三大类库。
(4)编译速度非常快。
缺点
由于推出的时间太短,关于它的各种资料还不太多。
综述:我认为C++ Builder 是最好的编程工具。它既保持了C++语言编程的优点,又做到了完全的可视化。
C语言简介
==============================================
方案五 SQL语言 & Power Builder
对于一些传统的数据开发人员来说,Foxpro系列也许让他们感到更加熟悉。但是对于初学者来说,PowerBuilder也许是最好的数据库开发工具。各种各样的控件,功能强大的PowerBuilder语言都会帮助你开发出自己的数据库应用程序。
[NextPage]
JSP简介
在Sun正式发布JSP(Java Server Pages)之后,这种新的Web应用开发技术很快引起了人们的关注。JSP为创建高度动态的Web应用提供了一个独特的开发环境。按照 Sun 的说法,JSP能够适应市场上包括Apache WebServer 、IIS4.0在内的%的服务器产品。
JSP与ASP的简单比较
JSP与Microsoft的ASP技术非常相似。两者都提供在HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。在ASP或JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于Web服务器,而ASP和JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP和JSP都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。
ASP的编程语言是VBScript之类的脚本语言,JSP使用的是Java,这是两者最明显的区别。
此外,ASP与JSP还有一个更为本质的区别:两种语言引擎用完全不同的方式处理页面中嵌入的程序代码。在ASP下,VBScript代码被ASP引擎解释执行;在JSP下,代码被编译成Servlet并由Java虚拟机执行,这种编译操作仅在对JSP页面的第一次请求时发生。
运行环境
执行 JSP 代码需要在服务器上安装 JSP 引擎。此处我们使用的是 Sun 的 JavaServer Web Development Kit ( JSWDK )。为便于学习,这个软件包提供了大量可供修改的示例。安装 JSWDK 之后,只需执行 startserver 命令即可启动服务器。在默认配置下服务器在端口 监听,使用 上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEN中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力,面SUN的工程师敏锐地察觉到了这一点,从年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都想到:噢,这正是我想要的。于是Java成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅。
二. Java的定义
Java是一种简单的,面象对象的,分布式的,解释的,键壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。
Java的开发环境有不同的版本,如sun公司的Java Developers Kit, 简称 JDK。后来微软公司推出了支持Java规范的Microsoft Visual J++ Java开发环境,简称 VJ++。
三. Java的特点
1. 平台无关性
平台无关性是指Java能运行于不同的平台。Java引进虚拟机 原理,并运行于虚拟机,实现不同平台的Java接口之间。使 用Java编写的程序能在世界范围内共享。Java的数据类型与 机器无关,Java虚拟机(Java Virtual Machine)是建立在 硬件和操作系统之上,实现Java二进制代码的解释执行功能, 提供于不同平台的接口的。
2. 安全性
Java的编程类似C++,学习过C++的读者将很快掌握Java的精 髓。Java舍弃了C++的指针对存储器地址的直接操作,程序 运行时,内存由操作系统分配,这样可以避免病毒通过指 针侵入系统。Java对程序提供了安全管理器,防止程序的 非法访问。
3. 面向对象
Java 吸取了C++面向对象的概念,将数据封装于类中,利用类 的优点,实现了程序的简洁性和便于维护性。类的封装性、 继承性等有关对象的特性,使程序代码只需一次编译,然后 通过上述特性反复利用。程序员只需把主要精力用在类和接 口的设计和应用上。Java 提供了众多的一般对象的类,通 过继承即可使用父类的方法。在 Java 中,类的继承关系是单一的非多重的,一个子类 只有一个父类,子类的父类又有一个父类。Java 提供的 Object 类及其子类的继承关系如同一棵倒立的树形,根类 为 Object 类, Object 类功能强大,经常会使用到它及其 它派生的子类。
4. 分布式
Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP和FTP协议传送和接受信息的方法。这使得程序员使用网络上的文件和使用本机文件一样容易。
5. 键壮性
Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自已操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能。这些功能特征大大提高了开发Java应用程序的周期。Java提供: Null指针检测、 数组边界检测、 异常出口、 Byte code校验。
四. Java与C/C++语言
Java提供了一个功能强大语言的所有功能,但几乎没有一点含混特征。C++安全性不好,但C和C++被大家接受,所以Java设计成C++形式,让大家很容易学习。
Java去掉了C++语言的许多功能,让Java的语言功能很精炼,并增加了一些很有用的功能,如自动收集碎片。
Java去掉了以下几个C和C++功能:
指针运算
结构
typedefs
#define
需要释放内存
这将减少了平常出错的%。而且,Java很小,整个解释器只需K的RAM。
面象对象:Java实现了C++的基本面象对象技术并有一些增强,(为了语言简单,删除了一些功能)。Java处理数据方式和用对象接口处理对象数据方式一样。
五. Java与Internet
我们知道,早先的 www 仅可以传送文本和,Java的出现实现了互动的页面,是一次伟大的革命。
Java并不是为 Internet,WWW而设计的,它也可以用来编写独立的应用程序。Java 是一种面向对象语言。Java 语言类似于 C++ 语言,所以已熟练掌握 C++语言的编程人员,再学习 Java 语言就容易得多!Java 程序需要编译。实际上有两种 Java 程序:一种 Java 应用程序是一个完整的程序,如 Web 浏览器。一种 Java 小应用程序是运行于 Web 浏览器中的一个程序.
Java程序和它的浏览器HotJava,提供了可让你的浏览器运行程序的方法。你能从你的浏览器里直接播放声音。你还能播放页面里的动画。Java还能告诉你的浏览器怎样处理新的类型文件。当我们能在 baud线上传输视频图象时,HotJava将能显示这些视频。
当今Internet的一大发展趋势是电子商务,而Internet的安全问题是必须解决的问题,通常大的部门应设置防火墙,阻止非法侵入。
电子商务是当今的热门话题,然而传统的编程语言难以胜任电子商务系统,电子商务要求程序代码具有基本的要求:安全、可靠、同时要求能 与运行于不同平台的机器的全世界客户开展业务。Java以其强安全性、平台无关性、硬件结构无关性、语言简洁同时面向对象,在网络编程语言中占据无可比拟的优势,成为实现电子商务系统的首选语言。
Java程序被放置在Internet服务器上,当用户访问服务器时,Java程序被下载到本地的用户机上,由浏览器解释运行。
[NextPage]
PowerBuilder简介
PowerBuilder的产生
PowerBuilder是美国著名的数据库应用开发工具生产厂商PowerSoft推出的成功产品,其第一版于年6月正式投入市场。它是完全按照客户/服务器体系结构研制设计的,采用面向对象技术,图形化的应用开发环境,是数据库的前端开发工具。
PowerBuilder的特点
它支持应用系统同时访问多种数据库,其中既包括Oracel,Sybase之类的大型数据库,又包括FOXPRO之类支持ODBC接口的小型数据库,PowerBuilder是完全可视化的数据库开发工具,它提供了大量的控件,大大加快了项目的开发速度,也使开发者更容易掌握数据库的开发。
它使用的编程语言叫做工PowerScripr,它也是一种高级的,结构化的编程语言。PowerScript提供了一套完整的嵌入式SQL语句,开发人员可以像使用其它语句一样自由地使用SQL语言,这样就大大增强了程序操纵和访问数据库的能力。可以说PowerBuilder既适合初学者快速学习数据库的开发,又可以让有经验的开发人员开发出功能强大的数据库,是一种适用面非常广的开发工具。
PowerBuilder是一个用来进行客户/服务器开发的完全的可视化开发环境。使用PowerBuilder,你可以用一种可视的直观的方式来创建应用程序的用户界面和数据库接口。这是一个总的概念,实际上是开发人员使用PowerBuilder去开发应用程序,由于所开发的各种应用程序充分利用了图形用户接口(GUI)的优点,所以PowerBuilder被认为是一个图形工具。
在客户/服务器结构的应用中,PowerBuilder具有描述多个数据库连接与检索的能力。特别是PowerBuilder能从大多数流行的RDBMS中存取数据,且不管数据存放在什麽地方;另外,各种应用程序又可以独立于RDBMS,因为PowerBuilder可以使用数据库的标准操作语言SQL(结构化查询语言)进行。
使用PowerBuilder,可以很容易地开发出功能强大的图形界面的访问服务器数据库的应用程序,PowerBuilder提供了建立符合工业标准的应用程序(例如订单登记、会计及制造系统)所需的所有工具。
PowerBuilder应用程序由窗口组成,这些窗口包含用户与之交互的控件。开发人员可以使用所有标准空间(如按钮、复选框、下拉式列表框或编辑框)以及PowerBuilder提供的特殊的使应用程序更易于开发和使用的控件。
通常人们把PowerBuilder看成是一种开发工具,实际上它比其他工具强得多,是一种强有力的开发环境。开发人员不仅能用它来开发用户容易使用的各种应用程序还可以通过PowerBuilder修改数据库,利用多个内部定义函数,可以开发能和其他应用程序进行的各种应用程序。
PowerBuilder正在成为客户/服务器应用开发的标准。相对于其他任何客户/服务器开发环境,PowerBuilder使开发人员的工作更快、成本更低、质量更高、功能更强。
PowerBuilder为应用开发提供了全面综合性的支持,可以分别概括为如下几点:
事件驱动的应用程序
功能强大的编程语言与函数
面向对象的编程
跨平台开发
开放的数据库连结系统
PowerBuilder开发环境
PowerBuilder开发环境由一系列集成的图形画板(Painter)组成,应用开发人员通过简单的鼠标操作即可设计、建立、交互检验和测试客户/服务器应用程序。
[NextPage]
Delphi简介
Delphi这个名字源于古希腊的城市名。它集中了第三代语言