java简明教程第三版考试必备

java简明教程第三版考试必备
java简明教程第三版考试必备

1.数组: 在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织

起来的一种形式。

2.类: 具有相同或相似性质的对象的抽象就是类。

3.对象: 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可

看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。

4.类与对象的区别:类是一个抽象的概念,对象是一个具体的概念.类是在一组对象

的基础上,通过抽象和概括所获得的一个概念.

5.继承:将相关类组成层次结构,允许新类从已从在的类中派生,通过保留它们的属

性(即实例变量)和方法,并根据自己的要求添加新的属性和方法.

6.方法重载:在一个类中定义两个或多个同名的方法,但方法的参数个数或类型不完

全相同.

7.方法覆盖:子类中的方法的特征与父类中的方法特征完全一样.

8.方法重载与方法覆盖的区别:覆盖是指在子类中重新定义了父类中的同名方法,重载是

指对同名方法的不同使用方式.

9.抽象类: 包含了抽象方法的一个类.

10.抽象方法: 属于一种不完整的方法,只含有一个声明,没有方法主体。

11.接口:一系列常量和空方法的集合,它提供了多个类共有的方法,但不限制没个类

如何实现这些方法.

12.异常: 程序在运行过程中发生由于硬件设备问题、软件设计错误等导致的程序异

常事件.

13.委托事件模型:每个事件源可以发出若干种不同类型的事件,在程序中为每个事件

源指定一个或多个事件监听者,它可以对某种事件进行监听.

14.构造函数:与类只有名字相同的一种特殊方法. 作用:创建对象时,初始化对象的实例变

量的一种方法.特点:①不能加void修饰符,无返回值。②如果类中没有定义构造函数,编译器会自动创建一个不带参数的构造函数。

15.用final修饰符修饰类:不能被其他类继承,成为终极类。修饰属性:只能被引用,不

能被修改。修饰方法:不能背子类覆盖而成为终极方法。

16.Applet和应用程序的区别:①每个Applet程序都至少要用到两个包:java.awt和

java.applet。②每个Applet都必须集成系统定义的一个类Applet。③继承Applet的类是程序主类,再定一是要声明为public。浏览器是从主类开始执行的,而不是从main ()方法开始执行。④Applet程序由支持java的浏览器在调用网页时执行,并以图形方式处理输出结果。⑤每个Applet程序必须有一个HTML文件,作为applet的标签。

17.定义一个一元二次方程:

class Fangcheng

{

Float a,b,c;fooat x,y;

Void

Int float(){

If float d;

d = b*b-4*a*c;

if (d>0)

……………………

18.角谷猜想:任何一个正整数n,如果它是偶数,则对它除以2,如果是奇数,则对它乘3

再加1,这样得到一个新的正整数,如此继续进行上述处理,最终都能够得到1 。编写

应用程序和小程序分别证明:在3~10000之间的所有正整数都符合上述规则。

public class JiaoGu {

public static void main(String[] args) {

int i,j;

for(j=3;j<=10000;j++){

i=j;

do{

if(i%2==0)i=i/2;

else {

if(i<(2147483647-1)/3)i=i*3+1;

else {System.out.println("变量溢出!");

System.exit(0);

}

}

}while(i!=1);

}

System.out.println("证明完毕!");

}

}

import java.awt.Graphics;

import java.applet.Applet;

public class JiaoGu extends Applet{

public void paint(Graphics g) {

int i,j;

for(j=3;j<=10000;j++){

i=j;

do{

if(i%2==0)i=i/2;

else i=i*3+1;

}while(i!=1);

}

g.drawString("证明完毕!",100,100);

}

}

18.编写一个模拟掷色子的程序:

public class Shaizi {

public static void main(String[] args) {

int a,b,i,k=0;

for(i=0;i<3600;i++){

a=(int)(Math.random()*6)+1;

b=(int)(Math.random()*6)+1;

if(a+b==7)k++;

}

System.out.println(""+k);

}

}

19.编程:编写一个applet,要求输入一个任意长度的整数(long型变量所允许的范围内),

将这个数分成独立的数字并分开显示。

import java.awt.*;

import java.applet.Applet;

public class ShuZi extends Applet{

Label prompt;

TextField input;

long n=0;

public void init( ) {

prompt=new Label("输入一个任意整数");

input=new TextField(10);

add(prompt);

add(input);

}

public void paint(Graphics g) {

long a;

int x=0;

do{

a=n%10;

n=n/10;

g.drawString(""+a, 200-x*10, 100);

x++;

}while(n!=0);

}

public boolean action(Event e , Object o) {

n=Long.parseLong(o.toString( )) ;

repaint( );

return true;

}

}

20.编程:计算0~10之间各个整数的平方值和立方值。

public class ChengFang {

public static void main(String[] args) {

int i;

System.out.printf("整数\t平方\t立方\n");

for(i=0;i<=10;i++){

System.out.printf("%d\t%d\t%d\n",i,i*i,i*i*i);

}

}

}

21.编程:编写一个applet,读取一个矩形的边长,然后输出一个空心矩形。

import java.awt.*;

import java.applet.Applet;

public class SayHello extends Applet

{

Label prompt;

TextField input;

int n=0;

public void init( ) {

prompt=new Label("输入边长");

input=new TextField(5);

add(prompt);

add(input);

}

public void paint(Graphics g) {

int i;

for(i=0;i

for(i=0;i

for(i=0;i

for(i=0;i

}

public boolean action(Event e , Object o) {

n=Integer.parseInt(input.getText()) ;

repaint( );

return true;

}

}

22.定义一个类,它包含了一个int类型的变量x,若干个构造函数,和一个输出方法show()

逆序输出这个数。

class A{

int x;

A(int x){

this.x=x;

}

int show(){

int m,n,s=0;

m=x;

while(m!=0){

n=m%10;

m=m/10;

s=s*10+n;

}

return s;

}

}

import java.applet.Applet;

import java.awt.*;

public class TestA extends Applet{

Label prompt;

TextField input;

public void init(){

prompt = new Label(“请输入一个整数: ");

input = new TextField(6);

add(prompt);

add(input);

}

public void paint(Graphics g){

int x;

x= Integer.valueOf(input.getText()).intValue();

A a=new A(x);

g.drawString(""+a.show(),60,60);

}

public boolean action (Event e,Object o){

repaint();

return true;

}

}

23.定义一个圆类circle,它有一个变量radius(半径)。从键盘输出数据,通过构造函数

的参数传递给radius,编程计算并输出圆的周长和面积。但是必须确保输入的数据不为负数。

class Circle{

float radius;

Circle(float r){

radius=r;

}

double area(){

return Math.PI*radius*radius;

}

double length(){

return 2*Math.PI*radius;

}

}

import java.applet.Applet;

import java.awt.*;

public class CircleArea extends Applet{

Label prompt;

TextField input;

public void init(){

prompt = new Label("请输入圆半径: ");

input = new TextField(6);

add(prompt);

add(input);

}

public void paint(Graphics g){

float r;

r= Float.valueOf(input.getText()).floatValue();

if(r<0)g.drawString("半径不能为负", 60, 60);

else { Circle c=new Circle(r);

g.drawString("圆的面积是:"+c.area(),60,60);

g.drawString("圆的周长是:"+c.length(),60,90);

}

}

public boolean action (Event e,Object o){

repaint();

return true;

}

}

24.编写一个采用随机函数生成句子的游戏。现有4个字符串数组:

article,noun,verb,preposition,他们的内容分别是:the,a,one,some,any;boy,girl,dog,town,car;drove,jumped,ran,walked,skipped;to,form,over,under,on.依照句法要求:article+noun+verb+preposition+article+noun,编写程序以产生20个句子。

public class Sentences {

public static void main(String[] args) {

String article[]={"the","a","one","some","any"};

String noun[]={"boy","girl","dog","town","car"};

String verb[]={"drove","jumped","ran","walked","skipped"};

String preposition[]={"to","from","over","under","on"};

String source[][]=new String[6][];

String purpose[]=new String[20];

int i,j;

source[0]=article; source[1]=noun; source[2]=verb;

source[3]=preposition; source[4]=article; source[5]=noun;

for(i=0;i<20;i++){

purpose[i]=new String();

for(j=0;j<6;j++)

purpose[i]+=source[j][(int)(Math.random()*5)]+" ";

System.out.println(purpose[i]);

}

}

}

25.日期的常用格式具有如下两种:2012-11-29和November 29,2012.从键盘读入第一种格

式的日期,编程输出第二种格式的日期。

import java.applet.Applet;

import java.awt.*;

public class DateToString extends Applet {

Label lab;

TextField input;

public void init() {

lab=new Label("请输入一个日期,格式如(2010-10-24):");

input=new TextField (10);

add(lab);

add(input);

}

public boolean action(Event e,Object o){

repaint();

return true;

}

public void paint(Graphics g){

String d=input.getText();

if(d.length()==0) return;

else if(d.length()!=10||d.charAt(4)!='-'||d.charAt(7)!='-') g.drawString("日期格式错误!",100, 100); else{

String year=d.substring(0,4);

String day=d.substring(8);

String month;

int m=Integer.parseInt(d.substring(5, 7));

switch(m){

case 1:month="January";break;

case 2:month="February";break;

case 3:month="March";break;

case 4:month="April";break;

case 5:month="May";break;

case 6:month="June";break;

case 7:month="July";break;

case 8:month="August";break;

case 9:month="September";break;

case 10:month="October";break;

case 11:month="November";break;

case 12:month="December";break;

default:month="January";

}

g.drawString(month+" "+day+","+year, 100, 100);

}

}

26.定义一个Circle类,其中包含计算圆周长和面积的方法,若输入的半径小于零,就要抛

出一个自定义异常。

class IllegalRadius extends Exception{

public String toString(){

return "半径不能为负数!";

}

}

class Circle{

float radius;

Circle(float r)throws IllegalRadius{

if(r<0) throw(new IllegalRadius());

else radius=r;

}

double area(){

return Math.PI*radius*radius;

}

double length(){

return 2*Math.PI*radius;

}

}

import java.applet.Applet;

import java.awt.*;

public class UseCircle extends Applet{

Label prompt;

TextField input;

public void init(){

prompt = new Label("请输入圆半径: ");

input = new TextField(6);

add(prompt);

add(input);

}

public boolean action (Event e,Object o){

repaint();

return true;

}

public void paint(Graphics g){

float r;

r= Float.valueOf(input.getText()).floatValue();

try{

Circle c=new Circle(r);

g.drawString("圆的面积是:"+c.area(),60,60);

g.drawString("圆的周长是:"+c.length(),60,90);

catch(IllegalRadius e){

g.drawString(""+e,60,60);

}

}

}

27.编程:在屏幕上画出5个圆,它们的位置和半径都是随机的。

import java.applet.Applet;

import java.awt.*;

public class DrawCircles extends Applet {

public void paint(Graphics g){

int x,y,d;

for(int i=0;i<5;i++){

x=(int)(Math.random()*300);

y=(int)(Math.random()*100);

d=(int)(Math.random()*200);

g.drawOval(x, y,d, d);

}

}

}

28.编写一个华氏温度到摄氏温度的转换程序。通过一个文本框输入华氏温度,通过一个标

签输出相应得摄氏温度。

import java.applet.Applet;

import java.awt.event.*;

import javax.swing.*;

public class testEventField extends Applet implements ActionListener{

JTextField input;

JLabel label,output;

public void init(){

input=new JTextField(10);

label=new JLabel("请输入华氏温度");

output=new JLabel();

add(label);

add(input);

add(output);

input.addActionListener(this);

}

public void actionPerformed(ActionEvent e) {

double c;

c=Double.parseDouble(input.getText());

c=5.0/9*(c-32);

output.setText("摄氏温度:"+c);

}

}

29.编写一个程序,采用MouseListener接口,允许用户按鼠标按键、拖动鼠标和释放鼠标

按键。当释放鼠标键时,就在屏幕上画一个矩形。

import java.applet.Applet;

import java.awt.*;

import java.awt.event.*;

public class testEventMouse extends Applet implements

MouseMotionListener,MouseListener{

int x1,y1,x2,y2;

public void mouseDragged( MouseEvent e ){

x2=e.getX( );

y2=e.getY( );

repaint( );

}

public void mousePressed( MouseEvent e ){

x1=e.getX( );

y1=e.getY( );

}

public void mouseClicked(MouseEvent e){ }

public void mouseReleased(MouseEvent e){ }

public void mouseEntered(MouseEvent e){ }

public void mouseExited(MouseEvent e){ }

public void mouseMoved( MouseEvent e ){}

public void init( ){

addMouseMotionListener( this );

addMouseListener(this);

}

public void paint(Graphics g){

int x,y,h,l;

x=x1

y=y1

l=Math.abs(x2-x1);

h=Math.abs(y2-y1);

g.drawRect(x,y,l,h); //不需要调用g.clearRect方法清除遗留图形

}

}

30.编写一个GUI,界面上提供的按钮有“画圆”、“画矩形”、“画椭圆”和“画直线”,

另外提供两个文本框,用户可以在其中输入坐标位置。当用户按不同按钮时,就在屏幕输出不同的图形。

import java.applet.Applet;

import java.awt.Graphics;

import java.awt.event.*;

import javax.swing.*;

public class testEventField extends Applet implements ActionListener{

JTextField input1,input2;

JButton b1,b2,b3,b4;

int flag=0;

public void init(){

input1=new JTextField(4);

input2=new JTextField(4);

b1=new JButton("画圆");

b2=new JButton("画矩形");

b3=new JButton("画椭圆");

b4=new JButton("画直线");

add(input1);add(input2);

add(b1);add(b2);add(b3);add(b4);

b1.addActionListener(this);

b2.addActionListener(this);

b3.addActionListener(this);

b4.addActionListener(this);

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==b1)flag=1;

else if(e.getSource()==b2)flag=2;

else if(e.getSource()==b3)flag=3;

else flag=4;

repaint();

}

public void paint(Graphics g){

int x,y;

if(flag!=0){

x=Integer.parseInt(input1.getText());

y=Integer.parseInt(input2.getText());

if(flag==1)g.drawOval(x, y, 100,100);

else if(flag==2)g.drawRect(x, y, 100,100); else if(flag==3)g.drawOval(x, y, 100, 50); else g.drawLine(x, y, 200, 200);

}

}

Java程序员认证考试题库

第一部分 基础知识练习 目标 本章对应于《学生指南》各章的内容分别提供了练习题集,包括: ●第一章Java入门 ●第二章数据类型和运算符 ●第三章流程控制与数组 ●第四章封装 ●第五章继承 ●第六章抽象类与接口 ●第七章多态 ●第八章异常 ●第九章多线程机制 ●第十章输入输出流 ●第十一章使用泛型和集合框架 ●第十二章基于Swing的图形用户界面(GUI)设计 ●第十三章Java事件驱动编程

第一章练习题(Java入门) (C)1.下列哪项不是JDK所包含的内容?(选一项)A.Java编程语言 B.工具及工具的API C.Java EE扩展API D.Java平台虚拟机 2.下列关于JDK、JRE和JVM的描述。哪项正确?A.JDK中包含了JRE,JVM中包含了JRE B.JRE中包含了JDK,JDK中包含了JVM C.JRE中包含了JDK,JVM中包含了JRE D.JDK中包含了JRE,JRE中包含了JVM 3.下列哪个工具可以编译java源文件? A.javac B.jdb C.javadoc D.junit 4.JDK工具javadoc的作用是哪项? A.生成Java文档 B.编译Java源文件 C.执行Java类文件 D.测试Java代码 5.以下哪些包是Java标准库中常用的包?(选三项)A.java.lang B.javax.servlet .http C.j ava. io D.java.sql

6.使用JDK工具生成的Java文档的文件格式是? A.XML格式 B.自定义格式 c.二进制格式 D.HTML格式 (AC)7.以下关于JVM的叙述,哪项正确?(选两项) A.JVM运行于操作系统之上,它依赖于操作系统 B.JVM运行于操作系统之上,它与操作系统无关 C.JVM支持Java程序运行,它能够直接运行Java字节码文件D.JVM支持Java程序运行,它能够直接运行Java源代码文件 8.以下关于支持Java运行平台的叙述,哪项错误? A.Java可在Solaris平台上运行 B.Java可在Windows平台上运行 C.Java语言与平台无关。Java程序的运行结果依赖于操作系统D.Java语言与平台无关。Java程序的运行结果与操作系统无关 (B)9.以下关于Applet和Java程序之间关系的叙述,哪项错误? A.-个Applet就是一段Java程序 B.Applet是一种特殊的Java程序,它需要运行在Web服务器上C.Applet是一种特殊的Java程序,它需要运行在Web浏览器上D.Applet是一种Java SE平台的应用程序 (AD)10.以下关于Java HotSpot的描述,哪两项错误?(选两项)A.Java HotSpot是一种热编译技术,在编译Java源程序时会被使用B.Java HotSpot是一种热编译技术,在运行Java代码时会被使用C.Java HotSpot是一种热编译技术,它只对程序的部分字节码进行优化D.Java HotSpot是一种热编译技术,它会对程序的全部字节码进行优化

java考试题库第五章

5-1 下列关于容器的描述中,错误的是D A.容器是由若干个组建和容器组成的 B.容器是对图形界面中界面元素的一种管理 C.容器是一种对指定宽和高的矩形范围 D.容器都是可以独立的窗口 5-2 下列界面元素中,不是容器的是A A.List B.Frame C.Dialog D.Panel 5-3 下列关于实现图形用户界面的描述中,错误的是D A.放在容器中的组件首先要定义,接着要初始化 B.放在容器中的多个组件是要进行布局的,默认的布局策略是FlowLayout C.容器中所有组件都是事件组件,都可以产生事件对象 D.事件处理是忧监听者定义的方法来实现的 5-4 下列关于组件类的描述中,错误的是A A.组件类中包含了文本组件类(TextComponent)和菜单组件类(MenuComponent) B.标签(Label)和按钮(Button)是组件类(Component)的子类 C.面板(Panel)和窗口(Window)是容器类(Container)的子类 D.文本框(TextField)和文本区(TextArea)是文本组件类(TextComponent)的子类 5-5 在对下列语句的解释中,错误的是C but.addActionListener(this); A.but是某种事件对象,如按钮事件对象 B.t his表示当前容器 C.A ctionListener是动作事件的监听者 D.该语句的功能是将but对象注册为this对象的监听者 5-6 所有事件类的父类是C A.ActionEvent B.AwtEvent C.KeyEvent D.MouseEvent 5-7 所有GUI标准组件类的父类是C A.Buttom B.List C.Component D.Container 5-8 下列各种布局管理器中Window类、Dialog类和Frame类的默认布局是C A.FlowLayout B.CardLayout C.BorderLayout D.GridLayout 5-9 在下列各种容器中,最简单的无边框的又不能移动和缩放的只能包含在另一种容器中的容器是D A.Window B.Dialog C.Frame D.Panel 5-10 下列关于菜单和对话框的描述中,错误的是C A.Frame容器是可以容纳菜单组件的容器 B.菜单条中可包含若干个菜单,菜单中又可包含若干菜单项,菜单项中还可包含菜单子项 C.对话框与Frame一样都可作为程序的最外层容器 D.对话框内不含有菜单条,它由Frame弹出

大学《java程序设计》考试题库及答案

若有定义int a=2,b=2; 则表达式(a++)+(++b) 的值是( )。 A. 5 监听器接口的方法返回值的类型是()。C. void 在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。 D. init() 以下哪个不是Java的原始数据类型() B. Boolean 向Applet传递参数的正确描述是()。C. C. PARAM name="age,value=20" 阅读下列代码; public class Test{ String s="One World One Dream"; public static void main(String args[]){ System.out.println(s); } } 其运行结果是_ C. 编译时出错//除非创建Text类的对象 如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()。 A. p.add(b,"South"); 编译和运行下面的应用程序,并在命令行界面输入12345 ,则回车后屏幕输出的结果是( )。public class A { public static void main(String args[]) throws IOException{ BufferedReader buf=new BufferedReader( new I nputStreamReader(System.in)); String str=buf.readLine(); int x=Integ er.parseInt(str); System.out.println(x/100); } } B. 123 构造函数何时被调用?() B. 创建对象时 以下哪项可能包含菜单条()。 D. Frame

java笔试题 第五套题

一、选择题 1、在下列选项中,哪个不是一个算法一般应该具有的基本特征______。 A、确定性 B、可行性 C、无穷性 D、拥有足够的情报 2、希尔排序法属于哪一种类型的排序法______。 A、交换类排序法 B、插入类排序法 C、选择类排序法 D、建堆排序法 3、下列关于队列的叙述中正确的是______。 A、在队列中只能插入数据 B、在队列中只能删除数据 C、队列是先进先出的线性表 D、队列是先进后出的线性表 4、对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。 A、N+1 B、N C、(N+1)/2 D、N/2 5、信息隐蔽的概念与下述哪一种概念直接相关______。 A、软件结构定义 B、模块独立性 C、模块类型划分 D、模拟耦合度 6、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是______。 A、模拟现实世界中不同事物之间的联系 B、强调模拟现实世界中的算法而不强调概念 C、使用现实世界的概念抽象地思考问题从而自然地解决问题 D、鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考 7、在结构化方法中,软件功能分解属于下列软件开发中的______阶段。 A、详细设计 B、需求分析 C、总体设计 D、编程调试 8、软件调试的目的是______。 A、发现错误 B、改正错误 C、改善软件的性能 D、挖掘软件的潜能 9、按条件f对关系R进行选择,其关系代数表达式为______。 A、

B、 C、бf(R) D、∏f(R) 10、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是______。 A、自顶向下 B、由底向上 C、由内向外 D、由整体到局部 11、下面有关变量及其作用域的陈述______是不对的。 A、在方法里面定义的局部变量在方法退出的时候被撤销 B、局部变量也叫自动变量 C、在方法外面定义的实例变量在对象被构造时创建 D、在方法中定义的方法的参变量只要该对象被需要就一直存在 12、下面有关Java代码安全性的叙述______是不对的。 A、字节码校验器加载查询执行需要的所有类 B、运行时解释器执行代码 C、在运行时,字节码被加载,验证然后在解释器里面运行 D、类加载器通过分离本机文件系统的类和从网络导入的类增加安全性 13、给出下面的代码: public class Data{ public static void main (String args[]){ float f=0.0; f+=1.0; System.out.println(f); } } ______叙述是对的。 A、编译时将发生错误 B、编译时正确但是运行时出错 C、输出为1.0 D、输出为null 14、类的设计要求它的某个成员变量不能被外部类访问。应该使用下面的______修饰符获得需要的访问控制。 A、public B、no modifier C、protected D、private 15、假设以下代码 public class Parent { public int addValue( int a, int b) { int s; s = a+b;

《信号与系统》课程教学大纲(英文)

“Signal and Systems” Course Outline Courses Name: Signals and Systems Categories of Courses: Basic Course Course Number: 071210T107 Course Ownership: School of Electronic Science & Information Technology Revised: August 2006 一、The Responsibility and Character of the Course 1、The Responsibility、Character and Goal of the Course This course is an important basal and professional class for the communication professional engineering. It focused on the characteristics of signal, the characteristics of the linear time-invariant system, the basic analysis for the signal through linear systems. From time domain to transform domain, from continuous-time to discrete-time, from the description of the input and output to state description. Through this course, students can master the methods of signal analysis and the basic theory of linear systems, cultivate the students’thinking , reasoning and analyzing abilities. This is the foundation to study digital signal processing, communications theory, signal and information processing, signal detection and etc. 2、Basic Requirements of the Course The course can enable students to master the signal and linear system's basic theory, basic analysis, This is the foundation to study the following courses and the research in the future actual work. 3、Suitable Professions、Teaching Hours and Credit Suitable professions: Communication Engineering, Network Engineering and etc. Teaching hours:54 hours(42 for the theory and 12 for the experiments).

Java笔试题库⑦

1,关于Spring MVC的核心控制器DispatcherServlet的作用,以下说法错误的是() A,它负责接收HTTP请求 B,加载配置文件 C,实现业务操作 D,初始化上下应用对象ApplicationContext 正确答案:C SpringMVC是Spring中的模块,它实现了mvc设计模式,首先用户发起请求,请求到达SpringMVC的前端控制器(DispatcherServlet),前端控制器根据用户的url请求 处理器映射器查找匹配该url的handle,并返回一个执行链,前端控制器再请求处理器适配器调用相应的handle进行处理并返回给前端控制器一个modelAndView,前端控制器再请求视图解析器对返回的逻辑视图进行解析,最后前端控制器将返回的视图进行渲染,并 把数据装入到request域,返回给用户。 DispatcherServlet作为SpringMVC的前端控制器,负责接收用户的请求,并根据 用户的请求返回相应的视图给用户。实现业务在service层,所以c答案错误。 2,下面有关spring的依赖注入,说法错误的是() A,依赖注入通常有如下两种:设值注入和构造注入: B,构造注入可以在构造器中决定依赖关系的注入顺序,优先依赖的优先注入 C,当设值注入与构造注入同时存在时,先执行构造注入,再执行设值注入 D,设值注入是指IoC容器使用属性的setter方法来注入被依赖的实例。这种注入方式比较简单、直观 正确答案:C 使用构造函数依赖注入时,Spring保证一个对象所有依赖的对象先实例化后,才实 例化这个对象。使用set方法依赖注入时,Spring首先实例化对象,然后才实例化所有依赖的对象。 当设值注入与构造注入同时存在时,先执行设值注入,再执行构造注入。 3,将元数据配置到Spring容器,下面哪个方法是不正确的() A,通过编组与解组对象 B,注解基础配置 C,Java基础配置 D,XML基础配置 正确答案:A 有三种方式向Spring 容器提供元数据:1,XML配置文件;2,基于注解配置;3,基于Java的配置,死概念记住即可。

Java期末考试习题库

一、选择题 1、下面关于变量及其作用范围的陈述哪个是不对的?(B ) A.实例变量是类的成员变量。 B.实例变量用关键字static声明。 C.在方法中定义的局部变量在该方法被执行时创建。 D.局部变量在使用前必须被初始化。 2、下面哪条语句把方法声明为抽象的公共方法?(B ) A.public abstract method(); B.public abstract void method(); C.public abstract void method(){} D.public void method() extends abstract; 3、哪个是将一个十六进制值赋值给一个long型变量?(D ) A.long number = 345L; B.long number = 0345; C.long number = 0345L; D.long number = 0x345L; 4、下面的哪个赋值语句是不对的?(A ) A.float f = 11.1; B.double d = 5.3E12; C.double d = 3.14159; D.double d = 3.14D; 5、下面哪个是不合法的标识符?(C ) A.$persons; B.TwoUsers; C.*point; D._endline; 6、若在某一个类定义中定义有如下的方法:final void aFinalFunction( ); 则该方法属于( C )。 A、本地方法 B、静态方法 C、最终方法 D、抽象方法 7、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合 法的( B )。 A、public static void main() B、public static void main(String[ ] args) C、public static int main(String[ ] args) D、public void main(String arg[ ]) 8、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序 各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( C )。 A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 9、在Java applet程序中,用户自定义的Applet子类常常覆盖父类的( C )方法来完成 applet界面的初始化工作。

《JAVA语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案 (应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

java期末考试试题(含答案)

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应 该是( C )。 A、’a’ B、12 C、’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ .... } B、public x extends y{ .... } C、public class x extends y{ .... } D、class x extends y implements y1{ .... } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

通信原理课程设计

电子信息工程系课程设计报告书 班级: 课程名称: 姓名: 学号: 指导教师: 年月日

一、实验目的 通过课程设计,巩固对课堂上基本理论知识的理解,加强理论联系实际,增强动手能力和通信系统仿真的技能。 二、实验任务 1.学习使用计算机建立通信系统仿真模型的基本方法及基本技能,学会利用仿真的手段对于实用通信系统的基本理论、基本算法进行实际验证; 2.学习现有流行通信系统仿真软件MATLAB7.0的基本使用方法,学会使用这些软件解决实际系统出现的问题; 3.通过系统仿真加深对通信课程理论的理解。 4 . 用MATLAB7.0 设计一种2FSK数字调制解调系统。 三、2FSK数字系统的调制原理图 用MATLAB7.0进行仿真设计,本次是设计一个2FSK数字调制解调系统。其中包括: 1.设计方案分析及系统原理图 2.2FSK已调信号的解调方法及原理图 2FSK调制就是使用两个不同的频率的载波信号来传输一个二进制信息序列。可以用二进制“1”来对应于载频f1,而“0”用来对应于另一相载频w2的已调波形,而这个可以用受矩形脉冲序列控制的开关电路对两个不同的独立的频率源w1、f2进行选择通。如下原理图: 载波f1 2FSK输出信号 载波f2 二进制数据

四、FSK 的解调方式 2FSK 的解调方式有两种:相干解调方式和非相干解调方式.下面我们将详细的介绍: 1 非相干解调 经过调制后的2FSK 数字信号通过两个频率不同的带通滤波器f1、f2滤出不需要的信号,然后再将这两种经过滤波的信号分别通过包络检波器检波,最后将两种信号同时输入到抽样判决器同时外加抽样脉冲,最后解调出来的信号就是调制前的输入信号。其原理图如下图所示: 2 相干解调 根据已调信号由两个载波f1、f2调制而成,则先用两个分别对f1、f2带通的滤波器对已调信号进行滤波,然后再分别将滤波后的信号与相应的载波f1、f2相乘进行相干解调,再分别低通滤波、用抽样信号进行抽样判决器即可。带通滤波器 抽样脉冲 包络检波器 带通滤波器 包络检波器 抽样判决器 输入 输出 F1 F2

SUN认证Java程序员考试题库

SUN认证Java程序员考试题库2017年SUN认证Java程序员考试题库 1.下列哪项不是JDK所包含的内容?(选一项) A.Java编程语言 B.工具及工具的API C.JavaEE扩展API D.Java平台虚拟机 2.下列关于JDK、JRE和JVM的描述。哪项正确? A.JDK中包含了JRE,JVM中包含了JRE B.JRE中包含了JDK,JDK中包含了JVM C.JRE中包含了JDK,JVM中包含了JRE D.JDK中包含了JRE,JRE中包含了JVM 3.下列哪个工具可以编译java源文件? A.javac B.jdb C.javadoc D.junit 4.JDK工具javadoc的'作用是哪项? A.生成Java文档 B.编译Java源文件

C.执行Java类文件 D.测试Java代码 5.以下哪些包是Java标准库中常用的包?(选三项) https://www.360docs.net/doc/1012439554.html,ng B.javax.servlet.http C.java.io D.java.sql 6.使用JDK工具生成的Java文档的文件格式是? A.XML格式 B.自定义格式 c.二进制格式 D.HTML格式 7.以下关于JVM的叙述,哪项正确?(选两项) A.JVM运行于操作系统之上,它依赖于操作系统 B.JVM运行于操作系统之上,它与操作系统无关 C.JVM支持Java程序运行,它能够直接运行Java字节码文件 D.JVM支持Java程序运行,它能够直接运行Java源代码文件 8.以下关于支持Java运行平台的叙述,哪项错误? A.Java可在Solaris平台上运行 B.Java可在Windows平台上运行 C.Java语言与平台无关。Java程序的运行结果依赖于操作系统 D.Java语言与平台无关。Java程序的运行结果与操作系统无关 9.以下关于Applet和Java程序之间关系的叙述,哪项错误?

最新java网络编程复习题(考试题库)

V大发大纲 Java网络编程期末复习题(I/O、多线程、网络编程、数据库操作) 一、单选题 1、下列关于Java线程的说法那些是正确的() A、每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。 B、创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。 C、Thread类属于java.util程序包。 D、以上说法无一正确。 2、运行下列程序, 会产生什么结果?() public class X extends Thread implements Runable{ public void run(){ System.out.println("this is run()"); } public static void main(String args[]) { Thread t=new Thread(new X()); t.start(); } } A、第一行会产生编译错误 B、第六行会产生编译错误 C、第六行会产生运行错误 D、程序会运行和启动 3、下列选项中,用于定义接口的关键字是() A、import B、implements C、interface D、protected 4.定义类头时能使用的修饰符是( )。 A) private B) static C) abstract D) protected 5、下面哪个方法不可以在任何时候被任何线程调用?( ) A、wait() B、sleep() C、yield()

D、synchronized(this) 6.下列关于线程优先级的说法中,正确的是 A) 线程的优先级是不能改变的 B) 线程的优先级是在创建线程时设置的 C) 在创建线程后的任何时候都可以设置 D) B和C 7.线程生命周期中正确的状态是 A) 新建状态、运行状态和终止状态 B) 新建状态、运行状态、阻塞状态和终止状态 C) 新建状态、可运行状态、运行状态、阻塞状态和终止状态 D) 新建状态、可运行状态、运行状态、恢复状态和终止状态 8.Thread类中能运行线程体的方法是 A) start() B) resume() C) init() D) run() 9在程序读入字符文件时,能够以该文件作为直接参数的类是 A) FileReader B) BufferedReader C) FileInputStream D) ObjectInputStream 10)java.io包的File类是 A) 字符流类B) 字节流类 C) 对象流类D) 非流类 11)下列描述中,正确的是 A) 在Serializable接口中定义了抽象方法 B) 在Serializable接口中定义了常量 C) 在Serializable接口中没有定义抽象方法,也没有定义常量 D) 在Serializable接口中定义了成员方法 12. java中用于创建文件对象的类是() A.File B. Object C. Thread D. Frame 13. 从键盘上输入一个字符串创建文件对象,若要判断该文件对象为目录文件或数据文件,可使用下列哪个方法?() A.getPath() B. getName() C.isFile() D. isAbsolute() 14. 下列哪个类不对直接创建对象?() A.InputStream B. FileInputStream C. BufferedInputStream D. DataInputStream 15. 从键盘上输入多个字符时,为了避免回车换行符的影响,需要使用下列哪个流方法?() A.write() B. flush() C. close() D. skip() 16. 以对象为单位把某个对象写入文件,则需要使用什么方法?() A. writeInt() B writeObject() C. write() D.writUTF() 17. 下列哪个类的方法能够直接把简单数据类型写入文件?() A.OutputStream B. BufferedWriter C. ObjectOutputStream. D.FileWriter 18. 若一个类对象能被整体写入文件,则定义该类时必须实现下列哪个接口?() A.Runnable B. ActionListener C. WindowsAdapter D. Serializable 19. 下列哪种类型的数据能以对象的形式写入文件?() A.String B. Frame C. Dialog D. Button

光纤通信简明教程部分参考答案

第一章习题 1-1 什么是光纤通信? 目前使用的通信光纤大多数采用基础材料为SiO 2的光纤,它是工作在电磁波的哪个区?波长范围是多少?对应的频率范围是多少? 光纤通信是利用光导纤维传输光波信号的通信方式。 目前使用的通信光纤大多数采用基础材料为SiO 2的光纤。它是工作在近红外区,波长为0.8~1.8μm ,对应的频率为167~375THz 。 1-2 试画出光纤通信系统组成的方框图。 一个光纤通信系统通常由电发射机、光发射机、光接收机、电接收机和由光纤构成的光缆等组成。 1-3 通信系统的容量用BL 积表示,B 和L 分别是什么含义? 系统的通信容量用比特率—距离积表示,B 为比特率,L 为中继间距。 1-4 光纤通信的主要优点是什么? 光纤通信之所以受到人们的极大重视,是因为和其他通信手段相比,具有无以伦比的优越性。 (1) 通信容量大 (2) 中继距离远 (3) 抗电磁干扰能力强,无串话 (4) 光纤细,光缆轻 (5) 资源丰富,节约有色金属和能源。 光纤还具有均衡容易、抗腐蚀、不怕潮湿的优点。因而经济效益非常显著。 1-5 请查阅最新资料论述光纤通信的发展趋势。 略 第二章习题 2-1 一个频率为Hz 的光14 106?源,其发射功率为10W ,它一秒内发射多少个光子? 解: 191434141052.210 610626.610106,10?=???==?==-ννh P N Hz W P 2-2 如下两种光纤,临界角满足什么条件可以保持光在纤芯中传播 ?

(1) 对于石英光纤,纤芯的折射率48.11=n ,包层的折射率46.12=n 。 (2) 对于塑料光纤,纤芯的折射率495.11=n ,包层的折射率402.12=n 。 解:由 1 2sin n n c =? 得 121 sin n n c -=? (1)?==-57.8048 .146.1sin 1c ? (2)?==-94.73495 .1402.1sin 1c ? 2-3 一单色光垂直照在厚度均匀的薄油膜上。油的折射率为 1.3,玻璃的折射率为 1.5 ,若单色光的波长可由光源连续调节,并观察到500nm 与700nm 这两个波长的单色光在反射中消失,求油膜的厚度。 解:由于空气的折射率小于油的折射率,油的折射率小于玻璃的折射率,薄油膜的上、下两表面反射而形成相干光,由于两束光的路程不同而引起的光程差为2 n 2e ;由于薄油膜的上、下两表面反射光都发生位相突变而不引起额外的光程差。 所以总的光程差为 e n 22=δ 当反射光因干涉而减弱,则有 λδ)2/1(22-==k e n 由上式得2211)2/1()2/1(λλ-=-k k k 1 ,k 2=1,2,3… … 所以k 1 =4,k 2=3 把n 2=1.3代入得到油膜的厚度为干涉加强的光波波长为: e=673.08nm 2-4 一波长为λ=600nm 的单色平行光垂直照射一个光栅上,光栅常数为d=6μm ,问第二级明纹所对应的衍射角φ为多少? 解:光衍射角φ满足光栅方程时: λφk b a ±=+sin )( k=0,1,2… … 式中d=a+b ,k=2 得 ?=+=-54.112sin 1b a λφ 2-5 一束线偏振光入射到偏振片上,光矢量方向与偏振化方向分别成30°角和60°角,问透过偏振片的光强之比是多少? 解:利用马吕斯定律:α20cos I I =

计算机原理简明教程习题答案

计算机原理简明教程》习题参考答案 第一章习题答案 1.1 答:是1946 年在美国宾夕法尼亚大学诞生,称为ENIAC. 特点是由1800个电子管和1500个继电器组成,重30吨;功耗150KV y只有20个寄存 器,运算速度5000 次/ 秒。 1.2 答:先将编好的程序输入存储器,然后按顺序逐条取出指令并执行。执行时指令在控制器中经分析、解释后产生各种控制信号,控制计算机完成指令的操作容。 包括存储器、运算器、控制器、输入设备、输出设备五大部件。 1.3 答:共经历了四代。 第一代:硬件,电子管;软件,汇编语言。第二代:硬件,晶体管;软件,高级语言。操作系统出现。第三代:硬件,集成电路;软件水平提高,操作系统普遍使用。第四代:硬 件,超大规模集成电路;软件具有智能化特性。 1.4 答:硬件就是计算机系统的物理实体。软件是指为计算机运行工作服务的全部技术资料、数据和各种程序。 1.5 答:分为应用层、系统层和硬件层三个层次。 1.6 答:应用层包括系统分析、应用软件和语言工具。系统层包括操作系统和语言处理程序。语言处理程序即编译器或解释器。硬件层主要包括硬件设计和硬件电路。 1.7 答:应用层所有任务程序都要由系统层中的语言处理程序将其转换成机器语言。 1.8 操作系统的作用是什么?说出当前有名的几个操作系统。操作系统是一个最主要的系统软件, 他控制其他程序的运行,管理系统资源并且为用 户提供操作界面,简单的操作系统有DOS复杂的操作系统有UNIX,WINDOW和LinuX。 1.9 超级计算机已经经历了几代?第三代与第五代相同处与不同处是什么?经历了五代:第一代单 处理器系统、第二代向量处理系统、大规模并行处理系统、第 四代共享存处理系统、第五代集群系统。 第三代与第五代在体系结构上是同构的,属于分布存处理方式,不同在于其是否采用价廉物美的日用品组件。

大学《java程序设计》考试题库及答案

若有定义int a = 2,b = 2;则表达式(a++)+(++b)的值是()。 A. 5 监听器接口的方法返回值的类型是()。C. void 在浏览器中执行applet程序,以下选项中的哪个方法将被最先执行( )。 D. init() 以下哪个不是Java的原始数据类型() B. Boolean 向Applet传递参数的正确描述是()。C. C. PARAM name = "age,value = 20" 阅读下歹0代码; public class Test{ String s = "One World One Dream"; public static void main(String args[]){ System.out.println(s); } } 其运行结果是— C.编译时出错〃除非创建Text类的对象 如果容器组件p的布局是BorderLayout ,则在p的下边中添加一个按钮b ,应该使用的语句是()。 A. p.add(b,"South"); 编译和运行下面的应用程序,并在命令行界面输入12345 ,则回车后屏幕输出的结果是()。public class A { public static void main(String args[]) throws IOException{ BufferedReader buf = new BufferedReader( new I nputStreamReader(System.in)); String str = buf.readLine(); int x = Integ er.parseInt(str); System.out.println(x/100); } } B. 123 构造函数何时被调用?( ) B. 创建对象时 以下哪项可能包含菜单条()。 D. Frame 编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件 的扩展名为()。

JAVA笔试试题

1. 下面哪些是Thread类的方法() A start() B run() C exit() D getPriority() 答案:ABD 解析:看Java API docs吧:https://www.360docs.net/doc/1012439554.html,/javase/7/docs/api/,exit()是System类的方法,如System.exit(0)。 2. 下面关于https://www.360docs.net/doc/1012439554.html,ng.Exception类的说法正确的是() A 继承自Throwable B Serialable CD 不记得,反正不正确 答案:A 解析:Java异常的基类为https://www.360docs.net/doc/1012439554.html,ng.Throwable,https://www.360docs.net/doc/1012439554.html,ng.Error和https://www.360docs.net/doc/1012439554.html,ng.Exception继承Throwable,RuntimeException和其它的Exception等继承Exception,具体的RuntimeException 继承RuntimeException。 扩展:错误和异常的区别(Error vs Exception) 1) https://www.360docs.net/doc/1012439554.html,ng.Error: Throwable的子类,用于标记严重错误。合理的应用程序不应该去try/catch 这种错误。绝大多数的错误都是非正常的,就根本不该出现的。 https://www.360docs.net/doc/1012439554.html,ng.Exception: Throwable的子类,用于指示一种合理的程序想去catch的条件。即它仅仅是一种程序运行条件,而非严重错误,并且鼓励用户程序去catch它。 2) Error和RuntimeException 及其子类都是未检查的异常(unchecked exceptions),而所有其他的Exception类都是检查了的异常(checked exceptions). checked exceptions:通常是从一个可以恢复的程序中抛出来的,并且最好能够从这种异常中使用程序恢复。比如FileNotFoundException, ParseException等。检查了的异常发生在编译阶段,必须要使用try…catch(或者throws)否则编译不通过。 unchecked exceptions:通常是如果一切正常的话本不该发生的异常,但是的确发生了。发生在运行期,具有不确定性,主要是由于程序的逻辑问题所引起的。比如ArrayIndexOutOfBoundException, ClassCastException等。从语言本身的角度讲,程序不该去catch这类异常,虽然能够从诸如RuntimeException这样的异常中catch并恢复,但是并不鼓励终端程序员这么做,因为完全没要必要。因为这类错误本身就是bug,应该被修复,出现此类错误时程序就应该立即停止执行。因此,面对Errors和unchecked exceptions应该让程序自动终止执行,程序员不该做诸如try/catch这样的事情,而是应该查明原因,修改代码逻辑。 RuntimeException:RuntimeException体系包括错误的类型转换、数组越界访问和试图访问空指针等等。 处理RuntimeException的原则是:如果出现RuntimeException,那么一定是程序员的错误。例如,可以通过检查数组下标和数组边界来避免数组越界访问异常。其他(IOException等等)checked异常一般是外部错误,例如试图从文件尾后读取数据等,这并不是程序本身的错误,而是在应用环境中出现的外部错误。 3. 下面程序的运行结果是() String str1 = "hello"; String str2 = "he" + new String("llo"); System.err.println(str1 == str2); 答案:false 解析:因为str2中的llo是新申请的内存块,而==判断的是对象的地址而非值,所以不一样。如果是String str2 = str1,那么就是true了。 4. 下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名 C.constructor在一个对象被new时执行

相关文档
最新文档