当前位置:文档之家› 11中德工程java考试题型及内容范围

11中德工程java考试题型及内容范围

11中德工程java考试题型及内容范围
11中德工程java考试题型及内容范围

一、考试范围

以下面ppt课件内容为准:

java_1_计算机中的信息表示;

java_2_基础;

java_3_对象;

java_4_对类的进一步讨论;

java_5_数组;

java_6_字符串类S tring;

二、考试题目的三种类型、范围

1、问答题

范围为以下章节中的所有概念与术语:

java_1_计算机中的信息表示;

java_2_基础;

java_3_对象;

java_4_对类的进一步讨论;

2、读程序写运行结果

范围为以下章节中的所有例子程序、习题:

java_2_基础;

java_3_对象;

java_4_对类的进一步讨论;

java_5_数组;

3、编程题

(1)编写一个完整的java应用程序;

(2)编写一个方法;

(3)编写一个类定义;

范围为以下章节中的所有例子、习题:

java_2_基础;

java_3_对象;

java_5_数组;

java_6_字符串类S tring;(掌握方法:charAt()、length()、equals()、compareT o()) 注:本次考试形式为闭卷!

概念与术语

面向对象性:JAVA语言是完全面向对象的,不允许定义独立于类的变量和方法

关键字就是JAVA中已有特殊含义和作用的单词。如表示类型

的类型符、表示语句的语句定义符等。

标识符是指程序中由用户自定义的单词。

运算符是指用于数据运算和处理的操作符号。

常量就是常数,也叫字面量。

字符串常量是用一对双引号括起来的字符序列。如,

程序中其值可以改变的量称为变量。变量包括三个属性:变量名、

变量值和变量类型。

现在请记住:下面的语句组可用来从键盘输入您所需要的任何类型的数据:

import java.io.*; //必须写在程序的开头

public class 类名

{

public static void main(String[] arg)

{

BufferedReader din = new BufferedReader(new

InputStreamReader(System.in));

String input;

Type t; //这里的“Type”是您所需要的类型。

input = din.readLine( );

t=Type.valueOf(input).typeValue( );

}

}

大机习题4

课外练习3-1:编写程序

(1)键盘输入半径值,计算园面积,并输出结果(保留小数后两位,第三位四舍五入。) import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class x iti12 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("输入半径:");

String input = din.readLine();

double r= Double.valueOf(input).doubleValue();

double s=0;

s=(int)(r*r*3.1415926*100+0.5)/100.0;

System.out.println("圆的面积是"+s);

}

}

(2)键盘输入年份值,判断该年是否为闰年。若是,则输出“是闰年”;否则输出“不是闰年”。(自行确定)提示:闰年的条件是:“能被4整除但不能被100整除;或能被4整除又能被400整除”。

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class x iti13 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("输入一个年份:");

String input = din.readLine();

int year= Integer.valueOf(input).intValue();

if((year%4==0&&year%100!=0)||(year%400==0)){

System.out.println("是闰年");

}

else{

System.out.println("不是闰年");

}

}

}

(3)利用方法“Math.random()”产生一个(100,1000)随机数,并输出之。

(提示:Math.random( )将返回一个带正号的 double 值:大于或等于 0.0,小于 1.0。)public class x iti14 {

/**

* @param args

*/

public static void main(String[] args) {

System.out.println(Math.random()*900+100);

}

}

课外练习4-1 (关于 if 语句)

(1)输入三个整数a、b、c,输出其中最大的数。

import java.io.*;

public class x iti1 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("请输入第一个整数:");

String input = din.readLine();

int a= Integer.valueOf(input).intValue();

System.out.println("请输入第二个整数:");

input = din.readLine();

int b= Integer.valueOf(input).intValue();

System.out.println("请输入第三个整数:");

input = din.readLine();

int c= Integer.valueOf(input).intValue();

int max=0;

if(a>b)max=a;

else max=b;

if(max

System.out.println("最大的数是"+max);

}

}

(2)计算函数

x, x<0

y = 2x-1,1≤x<10 的值。

3x-11,x≥10

import java.io.*;

public class x iti2 {

/**

* @param args

*/

public static void main(String[] args)throws IOException {

// TODO 自动生成方法存根

System.out.println("输入x的值");

BufferedReader din=new BufferedReader(new InputStreamReader(System.in)); String input= din.readLine();

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

int y=0;

if(x<0){y=x;}

if(x>=0&&x<10){y=2*x-1;}

if(x>=10){y=3*x-11;}

System.out.println("y="+y);

}

}

(3)输入两个整数 n、m 及一个运算符号 op(+、-、*、/),

计算并输出n op m 的值。

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class x iti3 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("请输入第一个整数:");

String input = din.readLine();

int n= Integer.valueOf(input).intValue();

System.out.println("请输入第二个整数:");

input = din.readLine();

int m= Integer.valueOf(input).intValue();

System.out.println("输入一个符号");

char op=(char)System.in.read();

if(op=='+')System.out.println("n+m="+(n+m));

else if(op=='-')System.out.println("n-m="+(n-m));

else if(op=='*')System.out.println("n*m="+(n*m));

else if(op=='/')System.out.println("n/m="+(n/m));

else System.out.println("ERROR");

}

}

(4)输入一个总行数(假定它是一篇文章的总行数)以及每页中

规定打印的行数。请计算出需要多少页打印纸?

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class x iti4 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("请输入总行数:");

String input = din.readLine();

int totalline= Double.valueOf(input).intValue();

System.out.println("请输入每页打印行数:");

input = din.readLine();

int pageline= Double.valueOf(input).intValue();

if(totalline%pageline!=0){

System.out.println("需要"+(totalline/pageline+1)+"页");

}

else{

System.out.println("需要"+(totalline/pageline)+"页");

}

}

}

课外练习4-2 利用switch语句完成下面各题:

(1)计算函数

1,0≤x<1.5

y= x, 1.5≤x<3.5 的值。

2x+1,3.5≤x<4

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class x iti5 {

* @param args

*/

public static void main(String[] args)throws IOException {

// TODO 自动生成方法存根

System.out.println("输入x的值");

BufferedReader din=new BufferedReader(new InputStreamReader(System.in)); String input= din.readLine();

double x= Double.valueOf(input).doubleValue();

switch((int)(x*2)){

case(1):

case(2):System.out.println("y=1");break;

case(3):

case(4):

case(5):

case(6):System.out.println("y="+x);break;

case(7):System.out.println("y="+(2*x+1));break;

default:System.out.println("x的值不在取值范围");break;

}

}

}

(2)输入两个整数n、m及一个字符op(+、-、*、/),要求利用switch

语句处理并输出 n op m 的值。其中op为字符型变量,存放运算符字符。import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class x iti6 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("请输入第一个整数:");

String input = din.readLine();

int n= Integer.valueOf(input).intValue();

System.out.println("请输入第二个整数:");

input = din.readLine();

int m= Integer.valueOf(input).intValue();

System.out.println("输入一个符号");

char op=(char)System.in.read();

/*if(op=='+')System.out.println("n+m="+(n+m));

else if(op=='-')System.out.println("n-m="+(n-m));

else if(op=='*')System.out.println("n*m="+(n*m));

else if(op=='/')System.out.println("n/m="+(n/m));

else System.out.println("ERROR");*/

switch(op){

case('+'):System.out.println("n+m="+(n+m));break;

case('-'):System.out.println("n-m="+(n-m));break;

case('*'):System.out.println("n*m="+(n*m));break;

case('/'):System.out.println("n/m="+(n/m));break;

default:System.out.println("ERROR");break;

}

}

}

课外练习4-3:

(1)输入一行字符,分别统计并输出其中字母、数值以及空格的个数。import java.io.*;

public class x iti7 {

/**

* @param args

*/

public static void main(String[] args)throws IOException {

// TODO 自动生成方法存根

char ch;

int a=0;

int b=0;

int c=0;

System.out.println("请输入一串字符");

while((ch=(char)(System.in.read()))!='\n'){

if(ch>='0'&&ch<='9'){

a++;

}

if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')){

b++;

}

if(ch==' '){

c++;

}

}

System.out.println("有"+a+"个数字");

System.out.println("有"+b+"个字母");

System.out.println("有"+c+"个空格");

}

}

(2)求1~100之间的所有奇数之和。

public class x iti8 {

/**

* @param args

*/

public static void main(String[] args) {

// TODO 自动生成方法存根

int sum=0;

int i=1;

while(i<=100){

sum+=i;

i+=2;

}

System.out.println("1到100所有奇数和是"+sum);

}

}

(3)求 1/1! - 1/3! + 1/5! - 1/7! + ……直到某项小于 10-6 为止。

public class x iti9 {

/**

* @param args

*/

public static void main(String[] args) {

// TODO 自动生成方法存根

double sum=1;

double i=-1;

double j=1;

int k=3;

while((1/j)>=1e-6){

j*=k*(k-1);

sum+=1/j*i;

k+=2;

i=i*-1;

}

System.out.println(sum);

}

}

(4)一球从100m高度自由下落,每次落地后反弹回原高度的一半,再落下。求它在第十次落地时,共经过多少m?第十次反弹有多高?

public class x iti10 {

/**

* @param args

*/

public static void main(String[] args) {

// TODO 自动生成方法存根

double s=100,i=1,j=1,k=0;

while(i<10){

j*=2;

s+=200/j;

k=100/(j*2);

i=i+1;

}

System.out.println("总距离是"+s+"米");

System.out.println("第十次弹起"+k+"米");

}

}

(5)利用迭代法求 x=a1/2。求平方根的迭代公式为:

xn+1=(xn+a/xn) /2。

要求前后两次求出的x的差的绝对值小于10-6。(do_while)import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class x iti11 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("输入要求平方根的数:");

String input = din.readLine();

double a= Double.valueOf(input).doubleValue();

double n=0,temp=0;

n=a/2;

do{

temp=n;

n=(n+a/n)/2;

}while(Math.abs(temp-n)>=1e-6);

System.out.println("平方根是"+n);

}

}

大机习题5

(1)打印图案

*******

*****

***

*

public class lianxi1 {

/**

* @param args

*/

public static void main(String[] args) {

// TODO 自动生成方法存根

int i,j;

for(i=1;i<=7;i+=2){

for(j=1;j

System.out.print(" ");

}

for(j=7;j>=i;j--){

System.out.print("*");

}

System.out.print("\n");

}

}

}

(2)利用公式π2 ≈6×(1/12+1/22+1/32+…+1/n2) 计算π的近似值,直到

最后一项的值小于10-6为止。public class lianxi2 {

/**

* @param args

*/

public static void main(String[] args) { // TODO 自动生成方法存根

double i,temp=1,sum=0,a=0,x0,x1; for(i=1;(1/temp)>(1e-6);i++){

temp=i*i;

sum+=1/temp;

}

a=6*sum;

x0=a;

do

{

x1=x0;

x0= (x1+a/x1)/2;

} while (Math.abs(x1-x0)>1E-6) ; System.out.println(x0);

}

}

(3)输入并输出若干数,直到遇到小于前一个数为止。

import java.io.*;

public class lianxi3 {

/**

* @param args

*/

public static void main(String[] args)throws IOException {

int n=0,n1=0;

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("请输入一个整数:");

n= Integer.valueOf(din.readLine()).intValue();

do{

n1=n;

System.out.println(n);

System.out.println("请输入一个整数:");

n= Integer.valueOf(din.readLine()).intValue();

}while(n>=n1);

System.out.println("程序结束");

}

}

}

(4)利用迭代法求x=a1/2。求平方根的迭代公式为:

xn+1=(xn+a/xn)/2。

要求前后两次求出的x的差的绝对值小于10-6。

import java.io.*;

public class lianxi4 {

public static void main(String[] args)throws IOException{

BufferedReader din = new BufferedReader(new InputStreamReader(System.in)); System.out.println("输入要求平方根的数:");

String input = din.readLine();

double a= Double.valueOf(input).doubleValue();

double n=0,temp=0;

n=a;

do{

temp=n;

n=(n+a/n)/2;

}while(Math.abs(temp-n)>=1e-6);

System.out.println("平方根是"+n);

}

}

大机习题6

(1)设计一个方法isPrime:确定一个正整数是否为质数。

(2)设计一个方法percentile:有1个double类型的形式参数,返回该参数中小数点后第二位数字。

(3)设计一个方法outSquare:输出由字符组成方阵,字符和方阵每边的字符数由形参确定。

(4)设计一个方法pi:根据下面公式,返回满足精度要求的π的值(精度值由参数确定)。

π/2=1+1/3+1/3*2/5+1/3*2/5*3/7+1/3*2/5*3/7*4/9+......

设计一个方法antiOrdinal:返回正整数n的反序数。例如,n为1024,则返回整数4201 。(5)定义一个类,实现银行帐户。

成员:帐号,姓名,存款余额。

方法:开户;

存款;

取款;

查询余额;

定义一个类,实现复数及其运算。

成员:实部,虚部。

方法:设置实部;设置虚部;

读取实部;读取虚部;

加上一个复数(由参数传递);

减去一个复数(由参数传递);

乘上一个复数(由参数传递);

除以一个复数(由参数传递);

用复数形式(a+bi)打印该复数;

java高级工程师_面试题和答案

一:选择题 1. 关于以下程序代码的说明正确的是( D ) 1.class HasStatic{ 2. private static int x=100; 3. public static void main(String args[ ]){ 4. HasStatic hs1=new HasStatic( ); 5. hs1.x++; 6. HasStatic hs2=new HasStatic( ); 7. hs2.x++; 8. hs1=new HasStatic( ); 9. hs1.x++; 10. HasStatic.x- -; 11. System.out.println(“x=”+x); 12. } 13. } A、 5行不能通过编译,因为引用了私有静态变量 B、 10行不能通过编译,因为x是私有静态变量 C、程序通过编译,输出结果为:x=103 D、程序通过编译,输出结果为:x=102 2. 下列关于for循环和while循环的说法中哪个是正确的?( B ) A.while循环能实现的操作,for循环也都能实现 B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果C.两种循环任何时候都可替换 D.两种循环结构中都必须有循环体,循环体不能为空 3. 以下选项中循环结构合法的是( C ) A、while (int i<7) { i++; System.out.println(“i is “+i); } B、 int j=3; while(j) { System.out.println(“ j is “+j); } C、int j=0; for(int k=0; j + k !=10; j++,k++) { System.out.println(“ j is “+ j + “k is”+ k); } D、 int j=0; do{ System.out.println( “j is “+j++); if (j = = 3) {continue loop;} }while (j<10); 4. 给出下面代码段, 哪行将引起一个编译时错误?( D )

Java软件开发工程师笔试题(答案)

Java工程师笔试题 一、填空题(本大题10小题,每空1分,共20分)。 1.Java语言的三大特性即是: 继承、封装、多态。 2.在Java中,char 型采用____unicode_______编码方案,这样,无论是中文字符还是英文字符,都是占用__2___个字节的内存空间。 3. 形式参数指的是方法被__定义____ 时的参数行,实际参数是方法被__调用__ _ 时所传递进去的变量或值。 4.JSP内置对象中,application对象是代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息,而session 对象则是每个客户专用的。 5.如果想把一个对象写入一个流,那么这个类就必须实现Seralizable 接口。 6.程序中实现多线程的方法有两种:继承Thread类和实现___Runable _ 接口。 7.多线程中,可以通过调用相应的setPriority() 方法来修改一个线程的相对优先级。 8.面向对象编程的五大设计原则,分别是单一职责、开放封闭、 里氏替换、依赖倒置、接口分离 9.通过Ajax,客户端获取的数据主要有两种类型:文本型和xml 10.Socket通常也称为套接字,用于描述__ ip 和_ _接口 二、选择题(本大题20 小题,每小题2分.共40分)。 1.在JA V A中,如果父类中某些方法不包含任何逻辑,并且需要由子类重写.应该使用( )关键字来声明父类的这些方法: A) final B) static C) abstract D) void 2.在JA V A中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是()。 A) interface A extend B,C B) interface A implements B,C C) class A implements B,C D) class A implements B, implements C

Java工程师面试题(含答案)

1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4. 多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗 基本数据类型包括byte、int、char、long、float、double、boolean和short。 类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 和Integer 有什么区别 Java提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int 提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为null,而原始类型实例变量的缺省值与它们的类型有关。 7、String 和StringBuffer的区别 JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String 类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。 8、运行时异常与一般异常有何异同 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。 9、说出Servlet的生命周期,并说出Servlet和CGI的区别。 Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求

java软件工程师面试题集

java软件工程师面试题集 EJB方面 1、EJB2.0有哪些内容?分别用在什么场合? EJB2.0和EJB1.1的区别? 答:规范内容包括Bean提供者,应用程序装配者,EJB容器,EJB配置工具,EJB服务提供者,系统管理员。这里面,EJB容器是EJB之所以能够运行的核心。EJB容器管理着EJB的创建,撤消,激活,去活,与数据库的连接等等重要的核心工作。JSP,Servlet,EJB,JNDI,JDBC,JMS..... 2、EJB与JAVA BEAN的区别? 答:Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java 类都可以是一个Bean。但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地进程内COM组件,它是不能被跨进程访问的。Enterprise Java Bean 相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB 必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。 3、EJB的基本架构 答:一个EJB包括三个部分: Remote Interface 接口的代码 package Beans; import javax.ejb.EJBObject; import java.rmi.RemoteException; public interface Add extends EJBObject { //some method declare } Home Interface 接口的代码

湖南工程学院电力电子2013考试试卷

填空 1 通常电力电子技术分为信息电子和电力电子两个分支。 2 滞环比较方式的电流跟踪型pwm变流电路属于实时控制方式电流响应快。 3在硬开关过程中会产生较大的开关噪声和开关损耗。 4 电力MOSFET开通的栅源极间驱动电压一般取10~15V使IGBT开通的栅射极间驱动电压一般取15~20V. 5 在双端电路中,变压器中的电流为直流脉动电流。 6.电网频率为50HZ时,交电频电路输出上限频率是20HZ。 7. 选择题 矩阵式变频电路理论上最大的输出输入电压比(D. 0.866) 换流方式:器件换流。强迫换流。负载电流,电网换流 对晶闸管来说,通常螺栓是其(阳极) 一个控制周期中电源侧的电流脉冲波数称斩波电路的(相数) 过压保护常用(避雷器;阻容吸收;硒堆;压敏电阻;整流式阻容吸收)。 名词解释 1.PWM控制——就是对脉冲的宽度进行调制的技术。即通过对一系列脉冲的宽度 进行调制,来等效地获得所需要波形。 2.有源逆变电路——把直流电逆变成交流电的电路称为逆变电路。当交流侧和电网 连结时,这种逆变电路称为有源逆变电路。 3.交流调压电路——在每半个周波内通过对晶闸管开通相位的控制,可以方便地调 节输出电压的有效值,这种电路称为交流调压电路。 4.逆变颠覆——逆变运行时,一旦发生换相失败,外接的直流电源就会通过晶闸管 电路形成短路,或者使变流器的输出平均电压和直流电动势变成顺向串联,由于逆变电路的内阻很小,形成很大的短路电流,这种情况称为逆变失败,或逆变颠覆。

造成逆变失败的原因有逆变桥晶闸管或元件损坏,供电电源缺相,逆变角太小,触发脉冲丢失或未按时到达, 间接电流控制——为了使PWM整流电路功率因数近似为1,即要求输入电流为正弦且和电压同相位,可以有多种控制方法。根据有没有引入电流反馈可以将这些控制方法 分两种,没有引入交流电流反馈的称为间接电流控制。 自然采样法———按照SPWM控制的基本原理,在正弦波和三角波的自然交点时刻控制功率开关器件的通断。 无源逆变——把工频交流电能或直流电能变换成频率和电压都可调节的交流电能供给 负载 触发延迟角————在晶闸管整流器中,用来调压,与一般晶闸管调压系统一样,采用相位控制,通过改变触发脉冲的延迟角,来获得与逆变器输出频率相对应的不同大 小的直流电压。 比较不同 交流调压:是通过控制交流电移相触发角控制输出电压大小。 交流调功:是通过控制交流电通断比例(PWM)来控制输出功率大小 区别:小功率场合叫调压,大功率场合叫调功,调压是调电压的高低,调功是 调带负载的能力或大小 场效应晶体管简称场效应管。由多数载流子参与导电,也称为单极型晶体管。它属于电压 控制型半导体器件。具有输入电阻高、噪声小、功耗低、动态范围大、易于集成、没有二 次击穿现象、安全工作区域宽等优点,现已成为双极型晶体管和功率晶体管的强大竞争者。 IGBT,绝缘栅双极型晶体管,是由BJT(双极型三极管)和MOS(绝缘栅型场效应管)组 成的复合全控型电压驱动式功率半导体器件, 兼有MOSFET的高输入阻抗和GTR的低 导通压降两方面的优点 问答题 1 电力电子装置中外因和内因过电压的主要内容分别是什么? 外因:操作过电压,雷击过电压 内因:换相过电压,关断过电压 2 什么是软开关?分类 见书200页

Java工程师面试题(三大框架)

Java工程师(程序员)面试题 Struts,Spring,Hibernate三大框架的面试 1.Hibernate工作原理及为什么要用? 原理:1.读取并解析配置文件2.读取并解析映射信息,创建SessionFactory 3.打开Session 4.创建事务Transation 5.持久化操作6.提交事务7.关闭Session 8.关闭SesstionFactory 为什么要用:1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。 2. Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作 3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。 4. hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。 2.Hibernate是如何延迟加载? 1. Hibernate2延迟加载实现:a)实体对象b)集合(Collection) 2. Hibernate3 提供了属性的延迟加载功能当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。 3.Hibernate中怎样实现类之间的关系?(如:一对多、多对多的关系) 类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one、one-to-many、many-to-many 4.Struts1流程: 1、客户端浏览器发出HTTP请求。 2、根据web.xml配置,该请求被ActionServlet接收。 3、根据struts-config.xml配置,ActionServlet先将请求中的参数填充到ActionForm中,然后ActionServlet再将请求发送到Action 进行处理。 4、是否验证,需要验证则调用ActionForm 的validate方法,验证失败则跳转到input,成功则继续。 5、Action从ActionForm获得数据,调用javabean 中的业务方法处理数据。 6、Action返回ActionForward对象,跳转到相应JSP 页面或Action。 7、返回HTTP响应到客户端浏览器。 MVC设计模式:modal:“模型”也称业务逻辑,是正真完成任务的代码,相当与JavaBeanview:视图,其实就是显示界面,相当于JSPcontroller:控制器,他控制模型和视图的交互过程,相当于servletstruts1是基于MVC设计模式hibernate是基于ORM对象关系映射 5.struts是什么? struts1是基于JSP和servlet的一个开源的Web应用框架,使用的是MVC的设计模式struts2是基于webwork技术的框架,是sun和webwork公司联手开发的一个功能非常齐全的框架,struts2和struts1没有任何关系,是一个全新的框架 6.spring是什么? spring是一个集成了许多第三方框架的大杂烩,其核心技术是IOC(控制反转,也称依赖注

java工程师面试自我介绍

java工程师面试自我介绍 java工程师面试自我介绍怎么写?java工程师面试的自我介绍是考官与应聘者面对面进行的一种测试方法。以下是小编为您整理的java工程师面试自我介绍相关资料,欢迎阅读! java工程师面试自我介绍【一】大家好,我是xxxx 职业学院信息电子系计算机硬件专业的一名应届毕业生,衷心感谢您抽出宝贵时间审阅我的简历。在三年的学习生活中,我牢固地掌握了计算机硬件与电子专业的基础知识,精通数电与模电,熟练office办公软件,对计算机组装与维护把握深刻,并在各种实践中获得了一定的实际运用能力。并利用课余时间进行了汉语言文学自学考试,通过科目过半。在自考期间不但提高了文学功底,而且培养了我坚强的意志。课余时间我还广泛阅读各方面书籍,积极参加各种集体活动和社会实践活动,扩展了知识面,培养了团队精神,增强了组织交际能力,提升了综合素质。 虽然缺少工作经验和社会阅历,但我会在实践工作中勤奋学习,弥补不足,积极进步。或许我应聘的职位和计算机硬件专业并不对口,但我认为人的才能并不仅局限于所学的专业,在其他领域同样有可挖掘的潜力! java工程师面试自我介绍【二】我叫朱cc,今年22岁,毕业于山东理工大学计算机科学与技术专业。由于非

常喜欢本专业,并期待将来从事专业方向的工作,因而在校期间十分注重对专业课的学习,拥有扎实的Core Java基础,良好的编程风格;熟悉JSP+Servlet+JavaBean模式的WEB 开发;熟悉Struts,Hibernate,Spring等开源框架,了解EJB;熟悉Tomcat,Jboss服务器等,熟悉基于Linux及Unix 环境下的软件开发。因为专业课知识掌握牢固,以专业第一的综合成绩毕业。 然而,我深知仅有专业知识是不够的,社会需要的是高素质复合型人才,因而在校期间学习之外,我积极参加各种社会实践活动,曾参与过学院上虚拟实验室开发的需求分析。大三暑假曾在浪潮软件园实习,参与了电信增值软件开发与编挰,通过亲自动手及不断地向有经验的工程师请教学习,实习结束时我已经基本掌握整个Java平台的核心技术,独立编程能力大大提高。同时实习生活也让我意识到从事Java编程工作团队合作的重要性。 虽然我的实际工作经验还不是很丰富,但相信有了扎实的专业基础知识和实习期间的实践经验,加上好学上进的精神,我能够胜任应聘岗位需求。希望贵公司给我这次机会。 java工程师面试自我介绍【三】我叫xx,您可能会联想起琼瑶小说,字的确就是那两个字,差别就是人没有那么漂亮,呵呵。其实,我的同学更都喜欢称呼我的英文名字,叫June,六月的意思,是君的谐音。

JAVA工程师笔试题

一、选择题 1.Java中提供了名为()的包装类来包装原始字符串类型。 A.Integer B.Char C.Double D.String 2.https://www.doczj.com/doc/9715306258.html,ng包的()方法比较两个对象是否相等,相等返回true。 A.toString() B.equals() C.compare() D.以上所有选项都不正确 3.下面的集合中,()不可以存储重复元素。 A.Set B.Collection C.Map D.List 4. Java接口的修饰符可以为() A private B protected C final D abstract 5. 下面哪些是Thread类的方法() A start() B run() C exit() D getPriority() 6. 下面关于https://www.doczj.com/doc/9715306258.html,ng.Exception类的说法正确的是() A 继承自Throwable B Serialable C集成自Error

D以上都不正确 7.下面程序的运行结果:() public static void main(String[] args) { // TODO Auto-generated method stub Thread t = new Thread() { public void run() { pong(); } }; t.run(); System.out.print("ping"); } static void pong() { System.out.print("pong"); } A pingpong B pongping C pingpong和pongping都有可能 D 都不输出 8. 下面哪个流类属于面向字符的输入流( ) A BufferedWriter B FileInputStream C ObjectInputStream D InputStreamReader 9. ArrayList list = new ArrayList(20);中的list扩充几次() A 0 B 1 C 2 D 3

Java开发工程师的面试自我介绍

Java开发工程师的面试自我介绍 这是一篇由网络搜集整理的关于Java开发工程师的面试自我介绍范文的文档,希望对你能有帮助。 Java开发工程师的面试自我介绍范文(一) 我叫XXX,今年22岁,毕业于XXX计算机科学与技术专业。由于非常喜欢本专业,并期待将来从事专业方向的工作,因而在校期间十分注重对专业课的学习,拥有扎实的Core Java基础,良好的编程风格;熟悉JSP+Servlet+JavaBean 模式的WEB开发;熟悉Struts,Hibernate,Spring等开源框架,了解EJB; 熟悉Tomcat,Jboss服务器等,熟悉基于Linux及Unix环境下的软件开发。因为专业课知识掌握牢固,以专业第一的综合成绩毕业。 然而,我深知仅有专业知识是不够的,社会需要的是高素质复合型人才,因而在校期间学习之外,我积极参加各种社会实践活动,曾参与过学院网上虚拟实验室开发的需求分析。大三暑假曾在浪潮软件园实习,参与了电信增值软件开发与编挰,通过亲自动手及不断地向有经验的工程师请教学习,实习结束时我已经基本掌握整个Java平台的核心技术,独立编程能力大大提高。同时实习生活也让我意识到从事Java编程工作团队合作的重要性。 虽然我的实际工作经验还不是很丰富,但相信有了扎实的专业基础知识和实习期间的实践经验,加上好学上进的精神,我能够胜任应聘岗位需求。希望贵公司给我这次机会。 Java开发工程师的面试自我介绍范文(二) 各位尊敬的`考官:

大家下午好!很荣幸能在这里面试,让我有向各位考官学习与交流的机会,现将自己的情况简要介绍一下: 我叫xx-x,出身在xx。性格比较温和、谦虚、认真细致、踏实、吃苦耐劳、有较强的责任心和社会适应能力。即将于xx年xx月毕业于河南工业职业技术学院,作为一名软件专业的大学生,我更喜欢平面设计,在大学三年的学习生活中,我对平面这一领域的相关知识有了一定的掌握,同时具有实际的操作能力与技术。 为了使在校所学的知识更好地应用到实际生活中,于xx年xx月有幸来北京中科院计算机所培训中心,通过三个月的实践训练,全面系统地学习了平面方面的专业知识与技能,能够应用平面设计的相关软件(photoshop图像处理软件、illustrator与coreidraw矢量绘图软件、indesigin与pagemaker排版软件)做基本的图像处理、海报、企业宣传册等,能够将所学知识真正应用到实际生活中。 在投身于社会之际,为了找到符合自己专业和兴趣的工作,更好地适应社会,我希望自己能够做到一种被别人需要的一种状态,至于做什么,就是在实践中,不断的学习、不断的锻炼.因此,我希望加入贵单位,如果能够成为公司的一份子,我相信我一定在自己的岗位上尽职尽责、踏踏实实地贡献之集的一份力量,与公司共同促进、发展。 “世界之大,人才济济”。我承认之集还不是最优秀的人才,但是我希望之集是此岗位最合适的人选,希望有幸能够被贵公司领导予以特别考虑。今后我在好的方面再接再厉,不足之处有所改善。我的介绍到此结束。谢谢

某公司Java工程师笔试题

某公司Java工程师笔试题 java工程师是要参加的,下面YJBYS小编为大家搜集的一篇某公司Java工程师,供大家参考借鉴,希望可以帮助到有需要的朋友! 一、问答题(共两题每题5分) 1、在软件开发的形式中,有单独开发和团队开发,请您分析两种开发形式的利弊? 2、除了工资还有什么福利对你具有吸引力? 二、案例分析(共四题每题5分)

1、案例一:项目经理陈经理所在的项目组接到总监分配的一项紧急任务,要求在2天内完成A项目,陈经理马上召集其下属工程师小张和小黄进行工作分配并分析项目要点和各个要点的主要做法。时间已经过去了1天半,工程师小张发现,根据陈经理对项目要点的主要做法行不通,但时间已经所剩不多了。 问题一:如果你是小张,你会怎么做?为什么? 问题二:由于项目做法的问题导致项目的进度无法按总监的要求在2天内完成,总监怪罪下来,你认为这是谁的责任,为什么? 2、案例二:工程师小李和工程师小陈分别在同一个项目组负责软件开发工作,他俩是同时进入公司的,而且被分配在邻座,因此关系非常好。工程师小李最近发现小陈经常在上班时间做一些与本公司业务无关的工作,并且在一次偶然的机会让小李发现,小陈的薪资比自己的薪资要高一倍多。

问题一:如果你是小李,你会怎么做,为什么? 问题二:如果你是小陈,你发现做的事情被小李发现了,你会怎么做,为什么? 技术题 一、基础题,共十题每题2分 1、GC是什么?为什么要有GC? 2、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?Byte a=1,b=1,bye c=a+b有什么错?Short a=1,b=1,Short c=a+b有什么错(答对一个给0.5分)

湖南工程学院__操作系统期末试卷试题

湖南工程学院操作系统期末试题(计算机专业10级) 1.使用SPOOLING系统的目的是为了提高( A)的使用效率 A 操作系统 B 内存 C CPU D I/O设备 2.UNIX系统的进程调度采用的是(D) A静态优先数 B间大循环轮转 C FIFO D多级反馈队列轮转 3.某一时刻、某一资源的信号量s=0,它表示(D) A该时刻该类资源的可用数目为1 B该时刻该类资源的可用数目为-1 C该时刻等待该类资源的进程数目为1 D该时刻等待该类资源的进程数目为0 4. 进程间的间接通信方式是指(C) A 源进程将消息发送给管道 B 源进程将消息发送给缓冲区 C 源进程将消息发送给信箱 D 源进程将消息直接发送给目标进程 5. 设置快表的目的在于(B) A提高地址查找的命中率 B提高地址变换速度 C淘汰不用的页 D增加页表的容量 6.绝对路径和相对路径比较(B) A绝对路径便于使用 B相对路径便于使用 C绝对路径比相对路径短 D相对路径字符比较长 7.并发是指两个或多个事件(B) A在同一时刻发生 B在同一时间区段内发生 C两个进程相互交互 D在时间上相互无关 8.很好解决了零头问题的存储管理方法是(A) A页式存储管理 B段式存储管理 C多重分区管理 D 可变分区管理 9.实现虚拟存储器的目的(D) A实现存储保护 B实现程序浮动 C扩充辅存容量 D扩充主存容量 10.信箱通信是一种(B)通信方式 A直接 B间接 C低级 D信号量 11.文件系统中,要求物理块必须连续的文件(C) A HASH文件 B 索引文件 C 顺序文件 D串联文件 12.动态重定位由(C)实现的 A软件 B硬件 C软件和硬件 D基址寄存器 13.通道是一种(C) A I/O端口 B 数据通道 C I/O专用处理器 D 软件工具 14. UNIX 是(分时)操作系统 15.CPU输出数据的速度远远高于打印机的打印速度,为解决这一矛盾,可采用(C) A、并行技术 B、通道技术 C、缓冲技术 D、虚拟存储技术 16.用户编写程序时所使用的地址称为( A ) A.逻辑地址 B.绝对地址空间 C.绝对地址 D.逻辑地址空间 17.若P,V操作的信号量S的初值为2,当前值为-1,则表示有(B)等待进程 A 0个 B 1个 C 2个 D 3个 18.在进程管理中,当(C )时,进程从阻塞状态变为就绪状态。 A.进程被进程调度程序选中 B. 等待某一事件

java工程师面试自我介绍范文【精选】

面试自我介绍是Java开发工程师求职者面试前必练的内容,也是Java开发工程师求职面试中的重要一环。下面是有关Java开发工程师的面试自我介绍范文,以供大家阅读。 java工程师面试自我介绍范文(一) 我叫XXX,今年22岁,毕业于XXX计算机科学与技术专业。由于非常喜欢本专业,并期待将来从事专业方向的工作,因而在校期间十分注重对专业课的学习,拥有扎实的Core Java 基础,良好的编程风格;熟悉JSP+Servlet+JavaBean模式的WEB开发;熟悉Struts,Hibernate,Spring等开源框架,了解EJB; 熟悉Tomcat,Jboss服务器等,熟悉基于Linux及Unix环境下的软件开发。因为专业课知识掌握牢固,以专业第一的综合成绩毕业。 然而,我深知仅有专业知识是不够的,社会需要的是高素质复合型人才,因而在校期间学习之外,我积极参加各种社会实践活动,曾参与过学院网上虚拟实验室开发的需求分析,大三暑假曾在浪潮软件园实习,参与了电信增值软件开发与编挰,通过亲自动手及不断地向有经验的工程师请教学习,实习结束时我已经基本掌握整个Java平台的核心技术,独立编程能力大大提高。同时实习生活也让我意识到从事Java编程工作团队合作的重要性。 虽然我的实际工作经验还不是很丰富,但相信有了扎实的专业基础知识和实习期间的实践经验,加上好学上进的精神,我能够胜任应聘岗位需求。希望贵公司给我这次机会。 java工程师面试自我介绍范文(二) 各位尊敬的考官: 大家下午好!很荣幸能在这里面试,让我有向各位考官学习与交流的机会,现将自己的情况简要介绍一下: 我叫xx-x,出身在xx。性格比较温和、谦虚、认真细致、踏实、吃苦耐劳、有较强的责任心和社会适应能力。即将于xx年xx月毕业于河南工业职业技术学院,作为一名软件专业的大学生,我更喜欢平面设计,在大学三年的学习生活中,我对平面这一领域的相关知识有了一定的掌握,同时具有实际的操作能力与技术。 为了使在校所学的知识更好地应用到实际生活中,于xx年xx月有幸来北京中科院计算机所培训中心,通过三个月的实践训练,全面系统地学习了平面方面的专业知识与技能,能够应用平面设计的相关软件(photoshop图像处理软件、illustrator与coreidraw矢量绘图软件、indesigin与pagemaker排版软件)做基本的图像处理、海报、企业宣传册等,能够将所学知识真正应用到实际生活中。 在投身于社会之际,为了找到符合自己专业和兴趣的工作,更好地适应社会,我希望自己能够做到一种被别人需要的一种状态,至于做什么,就是在实践中,不断的学习、不断的锻炼。因此,我希望加入贵单位,如果能够成为公司的一份子,我相信我一定在自己的岗位上尽职尽责、踏踏实实地贡献之集的一份力量,与公司共同促进、发展。 “世界之大,人才济济”。我承认之集还不是最优秀的人才,但是我希望之集是此岗位最

JAVA_软件工程师公司笔试题

一、 1.Anonymous Inner Class(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口) 答:匿名的内部类是没有名字的内部类。不能extends(继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现 2.你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用?答: MVC设计模式(应用观察者模式的框架模式) M:Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层(Independent of presentation)。 V:View(Presentation layer),视图,通过客户端数据类型显示数据,并回显模型层的执行结果。C:Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向,接受视图层发出的事件,并重绘视图 MVC框架的一种实现模型 模型二(Servlet-centric): JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。 StrutsMVC框架(Web application frameworks) Struts是使用MVC的实现模式二来实现的,也就是以控制器为核心。 Struts提供了一些组件使用MVC开发应用程序: Model:Struts没有提供model类。这个商业逻辑必须由Web应用程序的开发者以JavaBean 或EJB的形式提供 View:Struts提供了action form创建form bean,用于在controller和view间传输数据。此外,Struts提供了自定义JSP标签库,辅助开发者用JSP创建交互式的以表单为基础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,可用于JSP中。 Controller:Struts提供了一个核心的控制器ActionServlet,通过这个核心的控制器来调用其他用户注册了的自定义的控制器Action,自定义Action需要符合Struts的自定义Action规范,还需要在struts-config.xml的特定配置文件中进行配置,接收JSP输入字段形成Action form,然后调用一个Action控制器。Action控制器中提供了model的逻辑接口。 二、 1.什么是WebService? 答: WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,不依赖于平台,可以实现不同的语言间的相互调用,通过Internet进行基于Http协议的网络应用间的交互。WebService实现不同语言间的调用,是依托于一个标准,webservice是需要遵守WSDL(web 服务定义语言)/SOAP(简单请求协议)规范的。

Java开发工程师笔试题(带答案)

Java开发工程师笔试试题 (请不要在试题上留任痕迹,所有答案均写在答题纸上) 一.编程题(共26分) 1.任意写出一种排序算法。(6分) public void sort(int [] array){ //代码区 } 2.求1+2+3+..n(不能使用乘除法、for 、while 、if 、else 、switch 、case 等关键字 以及条件判断语句)(8分) public int sum(int n){ //代码区 return 0; } 3.完成下面法,输入一个整数,输出如下指定样式图案。(12分) 输入:3, 输出: 1*2*3 7*8*9 4*5*6

输入:4 输出: 1*2*3*4 9*10*11*12 13*14*15*16 5*6*7*8 public void drawNumPic(int n){ //代码区 } 二.选择题(定项选择每题3分,不定项选择每题4分,共63分) 1.在基本JAVA类型中,如果不明确指定,整数型的默认是__类型,带小数的默认是__类型?( B ) A.int float B.int double C.long float D.long double 2.只有实现了__接口的类,其对象才能序列化( A ) A.Serializable B.Cloneable https://www.doczj.com/doc/9715306258.html,parable

D.Writeable 3.代码System. out. println(10 % 3 * 2);将打印出?( B ) A. 1 B.2 C.4 D.6 4.以下程序运行的结果为( A ) public class Example extends Thread{ @Override public void run(){ try{ Thread.sleep(1000); }catch (InterruptedException e){ e.printStackTrace(); } System.out.print("run"); } public static void main(String[] args){ Example example=new Example(); example.run(); System.out.print("main"); } } A.run main B.main run C.main D.run E.不能确定 5.下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?( B ) A.实例变量指的是类中定义的变量,即类成员变量,如果没有初始化,会有默认值

Java工程师面试题整理

Java工程师面试题整理 1、面向对象的特征有哪些方面? 2、访问修饰符public,private,protected,以及不写(默认)时的区别? 3、String 是最基本的数据类型吗? 4、float f=3.4;是否正确? 5、short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗? 6、Java有没有goto? 7、int和Integer有什么区别? 8、&和&&的区别? 9、解释内存中的栈(stack)、堆(heap)和静态区(static area)的用法。 10、Math.round(11.5) 等于多少?Math.round(-11.5)等于多少? 11、switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上? 12、用最有效率的方法计算2乘以8? 13、数组有没有length()方法?String有没有length()方法? 14、在Java中,如何跳出当前的多重嵌套循环? 15、构造器(constructor)是否可被重写(override)? 16、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? 17、是否可以继承String类? 18、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 19、String和StringBuilder、StringBuffer的区别? 20、重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分? 21、描述一下JVM加载class文件的原理机制? 22、char 型变量中能不能存贮一个中文汉字,为什么? 23、抽象类(abstract class)和接口(interface)有什么异同?

Java工程师面试题(含答案)

1、抽象: 抽象就就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只就是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一就是过程抽象,二就是数据抽象。 2、继承: 继承就是一种联结类的层次模型,并且允许与鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法与实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3、封装: 封装就是把过程与数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其她对象。 4、多态性: 多态性就是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性与包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String就是最基本的数据类型不? 基本数据类型包括byte、int、char、long、float、double、boolean与short。 java、lang、String类就是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 与Integer 有什么区别 Java提供两种不同的类型:引用类型与原始类型(或内置类型)。Int就是java的原始数据类型,Integer就是java为int 提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 引用类型与原始类型的行为完全不同,并且它们具有不同的语义。引用类型与原始类型具有不同的特征与用法,它们包括:大小与速度问题,这种类型以哪种类型的数据结构存储,当引用类型与原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为null,而原始类型实例变量的缺省值与它们的类型有关。 7、String 与StringBuffer的区别 JA V A平台提供了两个类:String与StringBuffer,它们可以储存与操作字符串,即包含多个字符的字符数据。这个String 类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当您知道字符数据要改变的时候您就可以使用StringBuffer。典型地,您可以使用StringBuffers来动态构造字符数据。 8、运行时异常与一般异常有何异同? 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,就是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但就是并不要求必须声明抛出未被捕获的运行时异常。

JAVA工程师笔试题

JAVA工程师笔试题 一、选择题 1.如下代码 public class Test { public int aMethod() { static int i = 0; i++; return i; } public static void main (String args[]) { Test test = new Test(); test.aMethod(); int j = test.aMethod(); System.out.println(j); } } 输出结果是什么? A.0 B. 1 C. 2 D. 编译失败 2.如下代码 int i =1,j =10; do { if(i++> --j) {

continue; } } while (i <5); System.out.println("i = " +i+ "and j = "+j); 输出结果是什么? A.i = 6 and j = 5 B. i = 5 and j = 5 C. i = 6 and j = 5 D. i = 5 and j = 6 3. 如下代码: public class SwitchTest { public static void main(String[] args) { System.out.println("value = " + switchIt(4)); } public static int switchIt(int x) { int j = 1; switch (x) { case 1: j++; case 2: j++; case 3: j++; case 4: j++; case 5: j++; default: j++; }

相关主题
文本预览
相关文档 最新文档