1、现实世界中任何实体都能够看做是对象。对象之间通过消息彼此作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。若是说传统的进程式编程语言是以进程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,进程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java也不例外。现实世界中的对象均有属性和行为,映射到运算机程序上,属性则表示对象的数据,行为表示对象的方式(其作用是处置数据或同外界交互)。所谓封装,就是用一个自主式框架把对象的数据和方式联在一路形成一个整体。能
2、够说,对象是支持封装的手腕,是封装的大体单位。Java语言的封装性较强,因为Java无全程变量,无主函数,在Java中绝大部份成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,Java也提供了相应的对象类型以便与其他对象交互操作。多态性就是多种表现形式,具体来讲,能够用“一个对外接口,多个内在实现方式”表示。举一个例子,运算机中的堆栈能够存储各类格式的数据,包括整型,浮点或字符。无论存储的是何种数据,堆栈的算法实现是一样的。针对不同的数据类型,编程人员没必要手工选择,只需利用统一接口名,系统可自动选择。运算符重载(operatoroverload)一直被以为是一种优秀的多
3、态机制表现,但由于考虑到它会使程序变得难以理解,所以Java最后仍是把它取消了。继承是指一个对象直接利用另一对象的属性和方式。事实上,咱们碰到的很多实体都有继承的含义。例如,若把汽车看成一个实体,它能够分成多个子实体,如:卡车、公共汽车等。这些子实体都具有汽车的特性,因此,汽车是它们的“父亲”,而这些子实体则是汽车的“孩子”。Java提供给用户一系列类(class),Java的类有层次结构,子类能够继承父类的属性和方式。与另外一些面向对象编程语言不同,Java只支持单一继承。平台无关性 Java是平台无关的语言是指用Java写的应用程序不用修改就可在不同的软硬件平台上运行。平台无关有两种:源代
4、码级和目标代码级。C和C+具有必然程度的源代码级平台无关,表明用C或C+写的应用程序不用修改只需从头编译就可以够在不同平台上运行。Java主要靠Java虚拟机(JVM)在目标码级实现平台无关性。JVM是一种抽象机械,它附着在具体操作系统之上,本身具有一套虚机械指令,并有自己的栈、寄放器组等。但JVM一般是在软件上而不是在硬件上实现。(目前,SUN系统公司已经设计实现了Java芯片,主要利用在网络运算机NC上。另外,Java芯片的出现也会使Java更易嵌入抵家用电器中。)JVM是Java平台无关的基础,在JVM上,有一个Java解释器用来解释Java编译器编译后的程序。Java编程人员在编写完程
5、序后,通过Java编译器将Java源程序编译为JVM的字节代码。任何一台机械只要配备了Java解释器,就可以够运行那个程序,而无论这种字节码是在何种平台上生成的。另外,Java采用的是基于IEEE标准的数据类型。通过JVM保证数据类型的一致性,也确保了Java的平台无关性。Java的平台无关性具有深远意义。第一,它使得编程人员所梦寐以求的情形(开发一次软件在任意平台上运行)变成事实,这将大大加速和增进软件产品的开发。第二Java的平台无关性正好迎合了“网络运算机”思想。若是大量常常利用的应用软件(如字处置软件等)都用Java从头编写,而且放在某个Internet服务器上,那么具有NC的用户将不
6、需要占用大量空间安装软件,他们只需要一个Java解释器,每当需要利用某种应用软件时,下载该软件的字节代码即可,运行结果也能够发还服务器。目前,已有数家公司开始利用这种新型的计算模式构筑自己的企业信息系统。散布式 散布式包括数据散布和操作散布。数据散布是指数据能够分散在网络的不同主机上,操作散布是指把一个计算分散在不同主机上处置。Java支持WWW客户机/服务器计算模式,因此,它支持这两种散布性。对于前者,Java提供了一个叫作URL的对象,利用那个对象,你能够打开并访问具有相同URL地址上的对象,访问方式与访问本地文件系统相同。对于后者,Java的applet小程序能够从服务器下载到客户端,即
7、部份计算在客户端进行,提高系统执行效率。Java提供了一整套网络类库,开发人员能够利用类库进行网络程序设计,方便得实现Java的散布式特性。靠得住性和安全性 Java最初设计目的是应用于电子类消费产品,因此要求较高的靠得住性。Java虽然源于C+,但它消除许多C+不靠得住因素,能够避免许多编程错误。第一,Java是强类型的语言,要求显式的方式声明,这保证了编译器能够发觉方式挪用错误,保证程序加倍靠得住;第二,Java不支持指针,这杜绝了内存的非法访问;第三,Java的自动单元搜集避免了内存丢失等动态内存分派致使的问题;第四,Java解释器运行时实施检查,能够发觉数组和字符串访问的越界,最后,J
8、ava提供了异样处置机制,程序员能够把一组错误代码放在一个地方,如此能够简化错误处置任务便于恢复。由于Java主要用于网络应用程序开发,因此对安全性有较高的要求。若是没有安全保证,用户从网络下载程序执行就超级危险。Java通过自己的安全机制避免了病毒程序的产生和下载程序对本地系统的要挟破坏。当Java字节码进入解释器时,第一必需通过字节码校验器的检查,然后,Java解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间彼此干扰破坏。最后,客户端用户还能够限制从网络上装载的类只能访问某些文件系统。上述几种机制结合起来,使得Java成为安全的编程语言
9、。多线程 线程是操作系统的一种新概念,它又被称作轻量进程,是比传统进程更小的可并发执行的单位。C和C+采用单线程体系结构,而Java却提供了多线程支持。Java在两方面支持多线程。一方面,Java环境本身就是多线程的。若干个系统线程运行负责必要的无用单元回收,系统保护等系统级操作;另一方面,Java语言内置多线程控制,能够大大简化多线程应用程序开发。Java提供了一个类Thread,由它负责启动运行,终止线程,并可检查线程状态。Java的线程还包括一组同步原语。这些原语负责对线程实行并发控制。利用Java的多线程编程接口,开发人员能够方便得写出支持多线程的应用程序,提高程序执行效率。必需注意地
10、是,Java的多线程支持在必然程度上受运行时支持平台的限制。例如,若是操作系统本身不支持多线程,Java的多线程特性可能就表现不出来。 oracle数据库的特点无范式要求,可按如实际系统需求构造数据库。采用标准的SQL结构化查询语言。具有丰硕的开发工具,覆盖开发周期的各阶段。支持大型数据库,数据类型支持数字、字符、大至4GB的二进制数据,为数据库的面向存储提供数据支持。具有第四代语言的开发工具(SQL*formS、SQL*REPORTS、SQL*MENU等)。具有字符界面和图形界面,易于开发。通过SQL*DBA控制用户权限,提供数据保护功能,监控数据库的 运行状态,调整数据缓冲区的大小。散布优
11、化查询功能。具有数据透明、网络透明,支持异种网络、异构数据库系统。并行 处置采用动态数据分片技术。支持客户机/服务器体系结构及混合的体系结构(集中式、散布式、 客户机/服务器)。实现了两阶段提交、多线索查询手腕。支持多种系统平台(HPUX、SUNOS、OSF/一、VMS、 WINDOWS、WINDOWS/NT、OS/2)。数据安全保护办法:没有读锁,采取快照SNAP方式完全消除散布读写冲突。自动检测死锁和冲突并解决。数据安全级别为C2级(最高级)。数据库内模支持多字节码制,支持多种语言文字编码。具有面向制造系统的管理信息系统和财务系统应用系统。综上所述,选择java作为开发语言,oracle作
12、为数据库开发工具是个不错的选择。java语言的面向对象、平台无关、散布式、多线程、靠得住和安全等特性,使得开发出来的项目具有健壮性、可保护性、可移植性等特点。Oracle是目前最具权威的数据库产品,它具有的兼容性、可移植性、可联结性、高生产率和开放性的特点,使它成为现今众多的程序开发人员首选的数据库开发工具。所以本课题选择java和oracle作为开发技术是为此后开发更复杂的项目打下基础,以避免到时候碰到相关的技术问题而惊惶失措。1.3 课题实现技术的简要说明 本课题主要运用了java图形编程和oracle数据库的操作。Java图形编程给用户提供了一个直观、易于与用户进行交互的图形界面。在图形
13、编程中,运用了大量的java.swing包中的类,之所以选择swing包中的类而不选java.awt包中的类,主如果swing包中的类能给用户提供更好的观感。oracle数据库的操作这部份内容分成三部份来实现:第一,编写对数据库操作的类,包括:连接数据库、执行sql语句、关闭数据库连接等。第二,编写一个用于对学生信息进行数据库操作的类,包括:学生信息的增加、修改、删除和查询等。最后,编写一个用于对课程相关信息进行数据库操作的类,包括:对课程信息的增加、修改、删除、查询等等。通过结合图形编程和数据库编程,从而大体上实现了学生信息管理的大体功能,由于本人技术上的不足,不免有些地方需要改良,这些存在
14、的问题都将成为本人前进的动力,并在往后加倍完善本课题的设计。二 可行性研究分析2.1可行性分析 1. 设计题目:学生信息管理系统2. 功能需求系统开发的整体任务是实现学生信息管理的系统化,规范化和自动化。系统功能分析是在系统开发整体任务的基础上完成的。本次设计的学生信息管理系统需要完成的功能主要有:1) 学生信息的输入,包括学生大体信息、课程信息和成绩信息等。2) 学生信息的修改、删除、统计、查询、显示,包括学生大体信息、课程信息和成绩信息等 系统的性质为管理软件,因此数据库的设计与操纵是系统设计的核心。这里从两方面分析技术上的可行性。第一,对于java编程部份,java课已经开过。因此在课题
15、设计中,对java图形编程方面的问题都能迎韧而解。第二,对于数据库的有关知识,本人运用了大量的时刻对相关书籍的阅读和上机实验,大体上掌握了运用oracle数据库技术,具有必然的系统分析与设计能力,熟悉数据库的设计与操纵;因此该系统的实此刻技术上是可行的。 关于编制Java学生信息管理系统的可行性研究报告书关于编制Java学生信息管理系统的可行性研究报告书:2012.09.18项目名称:编制Java学生信息管理系统项目目标:研究编制Java学生管理信息系统的可能性初步设想:用学校已有的学生信息管理系统进行初步研究可行性研究:根据已有的信息,更加全面的研究Java编制学生管理信息系统的可能性。2.
16、3系统需求分析 本课题按照学生信息管理综合分析,便出于方便管理考虑,将学生信息管理系统的功能总结起来,共需要实现以下几个方面功能:管理学生信息管理所有学生的大体信息,对学生信息的操作包括添加、修改、删除等;能够按照各类条件查询出需要的信息,比如修改,能够通过学生学号查询出学生的大体信息,然后通过对需要修改项进行修改并保留修改后的结果存入数据库的学生表中。管理课程信息管理所有课程的大体信息,包括对课程信息的添加、修改、删除等操作;能够按照各类条件查询出需要的信息,并对相应的信息进行操作。比如修改和删除,能够通过学生的学号查询出学生的相应课程信息,对相应的课程进行修改、删除操作。学生选课与成绩按照
17、学生的学号进行选课,记录所选课程的成绩;能够按照学号查询出选课信息与成绩。通过以上功能的设计与实现,并实现学生信息管理系统的大体功能。三 可行性研究报告总结Java具有简单性、面向对象、散布式、解释型、靠得住、安全、平台无关、可移植、高性能、多线程、动态性等。通过这次课题的设计并实现,虽然会碰到很多难题,可是让我加倍受益的是在这次课题中取得的经验、心得和锻炼。我发觉做实验的进程其实就是个不断的解决问题的进程,从中也感觉到实验成功的快乐,一个人永久有学不玩的知识,就算是实验中的知识点都学了,但在实际的应用进程中仍然会碰到很多问题,碰到问题时要做到两点:一个是“查”,一个是“问”。不懂的地方就得要自己找答案,能够从书本、网络中查找解决的答案;再一个就是问周边的同窗。这次课程的设计给我所学的知识做了一个总结,为我深切学习编程做了铺垫。在本课题中存在的不足的地方是在所不免的,本人将在往后加于改良。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1