表达式
21.请写出表示year年是闰年的Java表达式。闰年的条件是:每4年一个闰年,但每100年少一个闰年,每400年又增加一个闰年。
(year%4==0 && year%100!=0 || (year%400==0)
21.请写出表示以下条件的表达式:变量x的值为1与变量y的值为2,有且只有一个成 立。(2)
x==1 && y!=2 || y==2 && x!=1
21. 请写出表示条件“y右移一位后大于3并且y不等于0”成立的Java表达式。
y>>1>3 && y!=0
If语句
21.请写出一段if语句,判断一个整数n是否为偶数。如果是偶数,输出“Yes.”;否则,输出“No.”。
if(n%2==0)
System.out.println(“Yes.”);
else
System.out.println(“No.”);
21.请写一个if语句,判断整数n是否同时满足“被3除余2,被7除余1”的条件,满足时输出“OK”,否则输出“NO”。
if(n%3==2&&n%7==1)
System.out.print(“OK”);
else
System.out.print(“NO”);
21.请写出实现计算y=|x|的if语句。(2)(201810)
if(x>=0)
y=x;
else
y=x*(-1);
While语句
21.请写出以下程序段的执行结果。
int c=0,d,n=3758;
while(n>0){
if((d=n%l0)>c)
c=d;
n=n/10;
}
System.out.println("结果="+c);
结果=8
21.以下语句有一处错误,请改正,然后写出此循环语句的循环次数。
int i=7;
do{
System.out.println(i--); i--;
}while(i!=0);//while(i>0); 循环4次
21.请写出下面程序段的执行结果。
int n=90;
int k=2;
System.out.print(n+″=〞);
while(k<=n){
if(k==n){System.out.println(n); break;}
else if(n%k==0){System.out.print(k+″*″);n=n/k;)
else k++;
}
90=2*3*3*5
22.以下代码定义了一个类,请指出其中三条不合法的代码行(行号参见注释)。
class Test22{ //1
float u;
static float v; //2
static void setUV(boolean f){ //3
u=fac1(f); //4
v=fac2(!f);} //5
static float facl(boolean f){return f?u:v;} //6
float fac2(boolean f){return f?v:u;} //7
} //8
For语句
21.请写出使用for语句,输出所有既能够被3整除也能够被5整除的三位数的代码。
for(int i=100;i<=999;i++)
if(i%3==0 && i%5==0)
System.out.println(i);
21.请使用for循环语句计算S=1+的值。
double s=0.0;
for(int i=1;i<=10;i++) s=s+1.0/i;
21.请使用for循环语句实现计算的值。
double s=0.0;
for(int i=2;i<=20;i=i+2) s=s+1.0/i;
21.已知变量n,请写出使用for语句计算s=1/1+1/2+1/3+1/4……+1/n的代码。
double s=0.0; for(int i=1;i<=n;i++) s=s+1.0/i;
21.已知变量n,请写出使用for语句计算s=1+1/3+1/6+……+1/(3*n)的代码。
double s=1.0;
for(int i=1;i<=n;i++) s=s+1.0/(3*i);
Switch语句
21.已知整形变量n,当n的值为0时,输出“正常”,否则输出“异常”。请写出使用switch语句实现此功能的代码。
switch(n){
case 0:System.out.println(“正常”); break;
default: System.out.println(“异常”);
}
数组
23.请写出定义一个包含2个子数组的二维整型数组对象aArr的代码,其中第一个子数组有5个元素,第二个子数组有3个元素。
int aArr[][] = new int[2][];
aArr[0] = new int[5];
aArr[1] = new int[3];
23.请写出声明int类型的二维数组intArr的三种形式。
int[][] intArr; int[] intArr[]; int intArr[][];
23.请写出与数组相比,Vector对象的特点(201804)
Vector对象的大小可以根据需求来改变。(2分)
Vector对象保存的元素的类型可以不一样。(2分)
面向对象
25.java的标识符命名标准(201804)
●所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
●首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
●关键字不能用作标识符,false、true和null;
●标识符是大小写敏感的
2.请写出在面向对象系统中,类和对象的关系。
类是对一组相同对象的描述,类概括了同类对象的共有性质:数据和方法。对象是类的一个实例。
26.import和package的区别(201804)
22.请写出在类的方法的定义之前,加上修饰字public、private的区别。
public 修饰的方法是共有的,其他类的方法都可以访问;而private修饰的方法是私有的,其他类都不能访问。
22.简述在类的方法的定义之前,分别使用修饰字final和abstract的作用是什么。
final修饰的方法不能被子类重写;abstract修饰的方法叫抽象方法,它只有方法的定义而没有方法的实现。
22. java重写和重载的区别请写出在类、方法、变量之前加上修饰字final 的作用。
final修饰的类是最终类,不能被继承
final修饰的方法是最终方法,不能被重写
final修饰的变量叫常量,不能改变值。
22.请写出接口定义的一般形式。(2)(201810)
interface 接口名 extends 父接口1,父接口2……{
//接口体
}
22.请写出接口体中可能包含的内容。
接口包含共有的静态常量定义和共有的抽象方法定义两部分
22.请写出通过继承,子类可以获得的好处。
通过继承,子类可以获得将父类的某些属性和方法
22. 请写出类之间的is-a关系和类之间的has-a关系的含义。
类A是继承扩展类B,则子类A和超类B之间是is-a关系
如果类A的某个成员变量的类型是B,则A与B之间是has-a关系
22.什么是方法重载,如何正确区分重载?
方法重载是指,一个类中可以有多个方法具有相同的名字和类型,但这些方法的参数必须不同,或者是 参数个数不同,或者是参数类型不同。
22.使用super有哪三种情况。
1、当子类的构造方法要显式调用父类构造方法时,必须将super作为子类构造方法的第一
语句
2、当子类继承父类后,如果需要访问被隐藏的变量或被重写的方法,需要使用super关键字
3、用super直接传递参数
22.请写出通过继承创建子类的作用。
在已有的类的基础上,可以扩展原有代码(扩充属性或扩充与改写某些方法),生成新的类,原有代码可以不必重写
25.请写出Java系统提供的支持文件随机访问的类的类名,以及该类提供的读取一个整数的方法,读取一个字符的方法。(2)
类名是RandomAccessFile,读取一个整数的方法是readInt(),该类读取一个字符的方法是:readChar()
26.请写出实现文件随机访问所使用的类的类名,以及该类常用的两种构造方法。
实现文件随机访问所使用的类的类名是:RandomAccessFile。该类的两种构造方法如下:RandomAccessFile(String name,String mode)和RandomAccessFile(File file,String mode)。
22.什么是类变量? 什么是实例变量? 类变量有什么特点?
staic修饰的成员变量称为类变量,没有的为实例变量。实例变量由每个对象独占,类变量由所有对象共享,类变量可以由类名和对象名引用。
22.为了系统安全,对JavaApplet小应用程序有什么限制?
小应用程序不允许访问和使用本地文件,避免小应用程序破坏本地文件。
23.请写出对类string的两个对象进行相等判定时,equals和==的不同(201810)
==用于比较引用和比较基本数据类型时具有不同的功能:
比较基本数据类型,如果两个值相同,则结果为true
而在比较引用时,如果引用指向内存中的同一对象,结果为true
比较基本数据类型,如果两个值相同,则结果为true
而在比较引用时,如果引用指向内存中的同一对象,结果为true
equals 方法(是String类从它的超类Object中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等,区分大小写。
绘图基础
24.要用Graphics2D类的方法画一个图形,首先要把参数对象g强制转换成Graphics2D对象;然后,用图形类提供的静态方法Double()创建一个图形对象;最后,以图形对象为参数调用Graphics2D对象的draw()方法绘制这个图形。请写出用这样的方法绘制一条线段的程序段,线段的两个端点分别是(10.0,10.0)和(30.0,30.0)。(2)
Graphics2D g2d=(Graphics2D)g;
Line2D line=new Line2D.Double(10.0,10.0,30.0,30.0);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论