java项目结构
A. 一套完整的java项目包括哪些部分
1、项目启动
1)、项目组成立(公司成员、客户成员)
2)、制定项目预期目标
3)、制定项目计划周期
4)、建立好项目组成员沟通机制2、需求调研
1)、创建调研计划、协调调研时间
2)、收集客户资料,获取客户需求
所有的资料都需要保留一份,资料中存疑的需要及时询问
3)、编写需求文档
重点描述出客户的业务流程和性能要求。
采用Word、Excel、Rose等形式。
4)、需求变更记录
5)、确定开发环境和运行环境
6)、扩展性要求
7)、与旧系统的接驳要求。
8)、估算出项目工作量本阶段需要一套需求管理系统来进行需求的管理。 本阶段的需求文档也是用户测试的依据。3、系统设计/详细设计
一个系统可以分为基础平台和应用模块两部分。
1)、选择基础平台,无论是采用第三方平台还是自行开发平台,都需要深入了解,查看是否符合要求。
2)、应用模块设计(针对业务流程)
3)、中间件的采用或自行开发,需要深入了解。
4)、用户界面的设计
如果用户界面设计完毕并确认,即可初步写出用户使用手册、管理员使用手册。
5)、变更记录本阶段的系统设计是集成测试的依据。4、程序开发
创建开发任务计划表、开发计划日程表
1)、优先编写测试用例
2)、按照编码规范编写代码
3)、按照文档注释规范注释
以上形成开发文档。 本阶段需要一套版本管理系统。 本阶段的测试用例也是单元测试的依据。
如果能做到,最好每日构建。5、测试
本阶段需要一套Bug管理系统,形成需求、设计、开发、测试互动。1)、编写测试计划和测试方案
2)、功能测试
单元测试、集成测试
3)、性能测试
集成测试、压力测试如果能做到,最好能进行自动化测试。
如果能做到,做分析统计工作。最后形成测试报告。6、试用、培训、维护
本阶段需要解决:
1)、解决异地修改和公司修改的同步问题。
2)、用户测试中的Bug修改问题,按照级别分为
a)、程序Bug
b)、设计变更
c)、需求变更
尽量按照a b c的顺序来进行修改,尽量避免b、c级的修改。最后形成安装手册、维护记录。
B. java虚拟机采用什么软件体系结构
JAVA虚拟机的生命周期
一个运行时的Java虚拟机实例的天职是:负责运行一个java程序。当启动一个Java程序时,一个虚拟机实例也就诞生了。当该程序关闭退出,这个虚拟机实例也就随之消亡。如果同一台计算机上同时运行三个Java程序,将得到三个Java虚拟机实例。每个Java程序都运行于它自己的Java虚拟机实例中。
Java虚拟机实例通过调用某个初始类的main()方法来运行一个Java程序。而这个main()方法必须是共有的(public)、静态的(static)、返回值为void,并且接受一个字符串数组作为参数。任何拥有这样一个main()方法的类都可以作为Java程序运行的起点。
Java语言中的所有基本类型同样也都是Java虚拟机中的基本类型。但是boolean有点特别,虽然Java虚拟机也把boolean看做基本类型,但是指令集对boolean只有很有限的支持,当编译器把Java源代码编译为字节码时,它会用int或者byte来表示boolean。在Java虚拟机中,false是由整数零来表示的,所有非零整数都表示true,涉及boolean值的操作则会使用int。另外,boolean数组是当做byte数组来访问的,但是在“堆”区,也可以被表示为位域。
Java虚拟机还有一个只在内部使用的基本类型:returnAddress,Java程序员不能使用这个类型,这个基本类型被用来实现Java程序中的finally子句。该类型是jsr, ret以及jsr_w指令需要使用到的,值是JVM指令的操作码的指针。returnAddress类型不是简单意义上的数值,不属于任何一种基本类型,并且值是不能被运行中的程序所修改的。
Java虚拟机的引用类型被统称为“引用(reference)”,有三种引用类型:类类型、接口类型、以及数组类型,值都是对动态创建对象的引用。类类型的值是对类实例的引用;数组类型的值是对数组对象的引用,在Java虚拟机中,数组是个真正的对象;而接口类型的值,则是对实现了该接口的某个类实例的引用。还有一种特殊的引用值是null,表示该引用变量没有引用任何对象。
C. java中有哪些数据结构
数据结构:
①数组 (Array)
在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数
据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组
元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指
针数组、结构数组等各种类别。
②栈 (Stack)
栈是只能在某一端插入和删除的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后
的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。
③队列 (Queue)
一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行
插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。
④链表 (Linked List)
一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:
一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。
⑤树 (Tree)
树是包含n(n>0)个结点的有穷集合K,且在K中定义了一个关系N,N满足 以下条件:
(1)有且仅有一个结点 k0,他对于关系N来说没有前驱,称K0为树的根结点。简称为根(root)
(2)除K0外,k中的每个结点,对于关系N来说有且仅有一个前驱。
(3)K中各结点,对关系N来说可以有m个后继(m>=0)。
⑥堆 (Heap)
在计算机科学中,堆是一种特殊的树形数据结构,每个结点都有一个值。通常我们所说的堆的数据结构,是指
二叉堆。堆的特点是根结点的值最小(或最大),且根结点的两个子树也是一个堆。
⑦图 (Graph)
图是由结点的有穷集合V和边的集合E组成。其中,为了与树形结构加以区别,在图结构中常常将结点称为顶点,
边是顶点的有序偶对,若两个顶点之间存在一条边,就表示这两个顶点具有相邻关系。
⑧散列表 (Hash)
若结构中存在关键字和K相等的记录,则必定在f(K)的存储位置上。由此,不需比较便可直接取得所查记录。称
这个对应关系f为散列函数(Hash function),按这个思想建立的表为散列表。
差不多我就知道这些了~
D. Java语言中的类的基本结构是什么
1.类是JAVA程序得的基本组成单位,定义了对象的属性和方法,是具有共同属性和行为的对象的集合。
2.对象的实质:属性+行为。
3.类的基本结构:属性,方法,构造方法,内部类,块。属性是对数据的描述。方法是对象的行为。构造方法用于实例化对象。
4.方法重载:
1)方法重载的原则:函数名相同,参数类型不同,参数个数不同,参数顺序不同,在同一作用域。
2)方法重载跟方法的返回值类型没有关系,只有返回值不同的方法不能构成重载。
5.方法的调用:类名.方法
6.对象的创建:假设存在一个类Person,创建对象语句为Person p=new Person();
下面是一个例子,参考理解
public class Cat {
public static void main(String[] args) {
Kitty K1=new Kitty();//创建一个对象K1
Kitty K2=new Kitty("小猫咪",3);//创建一个对象K2,名字为小猫咪,年龄为3
System.out.println("Kitty的名字:"+K1.name+K1.age+"岁");//输出对象K1的名字和年龄
K1.play();//调用play方法
K1.eat();//调用eat方法
System.out.println("Kitty2的名字:"+K2.name+K2.age+"岁");//输出对象K2的名字和年龄
K2.play();//调用play方法
K2.eat();//调用eat方法
}
}
class Kitty{
String name="小猫";
int age=1;
//无参数的构造方法
Kitty(){
}
//有参数的构造方法
Kitty(String name,int age){
this.name=name;
this.age=age;
}
//玩的方法
void play() {
System.out.println("玩橡皮泥");
}
//吃的方法
void eat() {
System.out.println("吃苹果");
}
}
E. Java语言的特点,实现机制和体系结构。
中任何实体都可以看作是对象。对象之间通过消息相互作用。另外,现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。 所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java也不例外。现实世界中的对象均有属性和行为,映射到计算机程序上,属性则表示对象的数据,行为表示对象的方法(其作用是处理数据或同外界交互)。所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象是支持封装的手段,是封装的基本单位。Java语言的封装性较强,因为Java无全程变量,无主函数,在Java中绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,Java也提供了相应的对象类型以便与其他对象交互操作。
可移植性:就是在这个系统上作的程序经过一次编译后可以移植到别的系统上解释执行,只要经过简单的粘贴和复制就行了,不影响程序的效果
安全性:在 iSeries 服务器上运行的大多数 Java(TM) 程序是应用程序,而不是 applet,所以“砂箱”安全性模型对它们不起限制作用。从安全性的观点看,Java 应用程序所受的安全性限制与 iSeries 服务器上的任何其它程序相同。要在 iSeries 服务器上运行 Java 程序,您必须对集成文件系统中的类文件具有权限。程序一旦启动,它就在该用户权限控制下运行。 您可以使用沿用权限来访问具有运行程序的用户的权限和程序拥有者权限的对象。沿用权限临时地将用户原先无权访问的对象的权限授予用户。
并发性:JAVA支持多线程技术,就是多个线程并行机制,多线程是Java的一个重要方法,特别有利于在程序中实现并发任务.Java提供Thread线程类,实现了多线程的并发机制.然而,程序的并发执行必定会出现多个线程互斥访问临界资源的局面,因而并发系统解决的关键就是对临界资源的管理和分配问题,而在进行临界资源分配时有两方面需要考虑,即安全性和公平性.文中首先讨论了多线程并发系统中的安全性与公平性问题,指出安全性与公平性在并发系统中访问临界资源时的重要性.并通过火车行驶单行隧道的实例,演示各种条件下的行驶情况来进一步说明该问题.
可视化:不好说,像vb这样的也是可视话的编成程序。
我借鉴了一些朋友的答案,还有一些是自己找啊,希望能给你带来帮助
F. 请问JAVA三层架构,持久层,业务层,表现层,都该怎么理解和MVC三层模型有什么
这个嘛,有一定的联系啦,也并不是完全是一样的啦,你首先把mvc理解清楚吧,M是MODEL(模型),V是view(视图), C是Controller(控制器),而java三层架构,持久层即是数据的持久化操作,就是数据层啦,即是数据库啦,业务层主要是业务逻辑的处理,负责表示层与数据层(持久层)的数据的传递和逻辑处理,就当很接近控制器的功能啦,就可以理解为控制器啦,表示层即是对数据的展示与用户的输入,所以呢?就是视图层啦 1. 用户看到view2. view ——————————》 controller用户操作(点击按钮等)3. controller——————》model调用model中方法3. model ——————》 controller返回数据到controller5. controller——————————》 view传数据到view,更新view6.用户看到更新后的view M——模型层,V——视图层,C——控制层,持久层——通常用于封装数据库连接、数据查询等操作,
G. java程序是由什么组成的
1.源程序文件的构成
要编写Java程序,首先应该知道Java程序文件中必须包括什么内容,Java程序的源程序文件结构如下:
package语句,0~1句,必须放在文件开始,作用是把当前文件放入所指向的包中。import语句,0~多句,必须放在所有类定义之前,用来引入标准类或已有类。publicclassDefinition,0~1句,文件名必须与类的类名完全相同。classDefinition,0~多句,类定义的个数不受限制。
interfaceDefinition,0~多句,接口定义的个数不受限制。Java程序的源代码文件要求包含三个要素:
1)以package开始的包声明语句,此句为可选。若有,且只能有一个package语句且只能是源程序文件的第一个语句,若没有,此文件将放到默认的当前目录下。
2)以import开始的类引入声明语句,数量可以是任意个。
3)classDefinition和interfaceDefinition分别代表类和接口的定义。由public开始的类定义只能有一个,且要求源程序文件名必须和public类名相同,Java语言对字符的大小写敏感,因此文件名相同意味着字母大小写也完全相同。如果源程序文件中有主方法main(),它应放在public类中。这三个要素在程序中必须严格按上述顺序出现。
2.类的构成
Java程序都是由类(class)所组成的,类的概念的产生是为了让程序语言能更清楚地表达出现实事物的本性。在Java中,类就是用于创建对象的模板,包含了特定对象集合的所有特性。Java类由两种不同的信息构成:属性和行为。
属性由一系列区别对象的数据组成,可用于确定属于类的对象的外观、状态和其他性质。在Java程序中,属性往往以类的成员变量形式出现。
行为指类对象对本身和其他对象所可以完成的事情,可以用于修改对象的属性,接收来自其他对象的信息和向其他要求执行任务的对象发送信息。在Java中,行为往往以一段小程序的形式出现,Java称这种小程序为“方法”(method)。统称为类的成员方法。
Java中类定义的语法形式为:
修饰符class<类名>[extend<父类名>]{type类变量1;type类变量2;
成员变量修饰符type<类方法名1>(参数列表){type局
部变量;方法体
}修饰符type<类方法名2>(参数列表){type局部变量;方法体
}成员方法}
其中class是Java的关键字,表明其后定义的是一个类。class前面的修饰符用来限定所定义的类的使用方式。类名是用户为该类起的名字,应该是一个合法的标识符。紧接着类定义语句的大括号之间的内容称为类主体。type指的是变量或方法的数据类型。类主体由成员变量和成员方法两部分组成。
以上所有提到或未提到的概念,在后面的章节中将详细为大家介绍。
3.注释语句的添加
在开发Java程序的过程中,经常需要在适当的地方加上注释语句,以便其他人阅读
程序,一般来说,Java语言的源文件中,任何地方都可以加注释语句,一个好的程序应该在
其需要的地方适当地加上一些注释,以便于其他人阅读并理解程序。
注释语句有三种格式:
1)//注释内容用于注释一行语句。
2)/ˇ注释内容ˇ/用于注释一行或多行语句。
3)/ˇˇ注释内容ˇˇ/用于注释一行或多行语句且注释语句中的内容可以通过使用Javadoc生成API文档,实现文档与程序同步实现的功能。