资源描述
第四章
1、 关于内部类,下列说法不正确得就是( )。
内部类不能有自己得成员方法与成员变量
2、 有一个类B,下面为其构造方法得声明,正确得就是( )。
B(int x) {}
3、 为AB类定义一个无返回值得方法f,使得使用类名就可以访问该方法,该方法头得形式为( )
static void f
4、 在Java语言中,哪一个包中得类就是自动导入得?( )
java、lang
5、 定义外部类时不能用到得关键字就是( )。
protected
6、 下列哪种类成员修饰符修饰得变量只能在本类中被访问?( )
private
7、 定义一个公有double型常量PI,哪一条语句最好?( )
public final static double PI=3、14;
8、 下面关于方法得说法,不正确得就是( )。
如果一个类定义了构造方法,也可以用该类得默认构造方法
9、 下面关于类得说法,不正确得就是( )。
类就就是对象
10、 给出下面得程序代码:
public class X4_1_3 {
private float a;
public static void m ( ){ }
}
如何使成员变量a被方法m( )访问( )
将private float a改为static float a
11、 给出下面程序代码:
byte[] a1, a2[];
byte a3[][];
byte[][] a4;
下列数组操作语句中哪一个就是不正确得?( )
a2 = a1
12、 下面代码运行后得输出结果为( )。
public class X6_1_5 {
public static void main(String[] args) {
AB aa = new AB;
AB bb;
bb = aa;
System、out、println(bb、equals(aa));
}
}
class AB{ int x = 100; }
true
13、 设有下列数组定义语句:
int a[] = {1, 2, 3};
则对此语句得叙述错误得就是( )。
a数组元素得下标为1~3
14、 已知有定义:String s="I love",下面哪个表达式正确?( )
s += "you";
15、 关于数组,下列说法中不正确得就是( )。
定义数组时必须分配内存
16、 执行语句:int[] x = new int[20];后,下面哪个说法就是正确得?( )
x[19]为0
1、 Applet由浏览器自动调用得主要方法,,与 分别对应了Applet从初始化、启动、暂停到消亡得生命周期得各个阶段 。
Init start stop destroy
2、 数组就是一种 数据类型,在Java中,数组就是作为 来处理得。数组就是有限元素得有序集合,数组中得元素具有相同得 ,并可用统一得与 来唯一确定其元素。
复合 对象 数据类型 数组名 下标
3、 在数组定义语句中,如果[]在数据类型与变量名之间时,[]之后定义得所有变量都就是
类型,当[]在变量名之后时,只有[]之前得变量就是 类型,之后没有[]得则不就是数组类型。
数组 数组
4、 利用 类中得方法可以实现数组元素得复制;利用类中得与 方法可以实现对数组元素得排序、查找等操作。
System arraycopy Arrays sort binarySearch
5、 Java语言提供了两种具有不同操作方式得字符串类:类与类。它们都就是 得子类。
String StringBuffer java、lang、Object
6、 System类就是一个功能强大、非常有用得特殊得类,它提供了、 系统信息等重要工具。这个类不能 ,即不能创建System类得对象,所以它所有得属性与方法都就是 类型,引用时以类名System为前缀即可。
标准输入/输出 运行时 实例化 static
7、 方法体内定义变量时,变量前不能加 ;局部变量在使用前必须,否则编译时会出错;而类变量在使用前可以不用赋值,它们都有一个得值。
修饰符 明确赋值 默认
8、 创建包时需要使用关键字 。
package
9、 定义类时需要关键字,继承类时需要 关键字,实现接口时需要关键字。
class extends implements
10、 引用static类型得方法时,可以使用做前缀,也可以使用做前缀。
类名 对象名
11、 静态数据成员既可以通过来访问,也可以通过直接访问它。
对象名 类名
12、 从用户得角度瞧,Java源程序中得类分为两种:与。
系统定义得类 用户自己定义得类
13、 static方法中只能引用 类型得数据成员与 类型得成员方法;而非static类型得方法中既可以引用 类型得数据成员与成员方法,也可以引用类型得数据成员与成员方法。
static static 非static
14、 如果用户在一个自定义类中未定义该类得构造方法,系统将为这个类定义一个默认构造方法。这个方法没有,也没有任何</FILL、TAG>具体语句</FILL、TAG>,不能完成任何操作。
形式参数
15、 就是所有类得直接或间接父类,它在 包中。
Object类 java、lang
16、 数组初始化包括 初始化与 初始化两种方式。
静态 动态
17、 静态数据成员被保存在类得内存区得单元中,而不就是保存在某个对象得内存区中。因此,一个类得任何对象访问它时,存取到得都就是(相同/不同)得数值。
公共存储 相同
18、 类中得方法就是一个特殊得方法,该方法得方法名与类名相同。[
构造
19、 当程序中需要引用java、awt、event包中得类时,导入该包中类得语句为。
import java、awt、event、*
20、 一个类主要包含两个要素:与</FILL、TAG>成员方法<FILL、TAG>
数据成员
24、 public class X6_3_1 {
public static void main(String[] args) {
int a[]={12,39,26,41,55,63,72,40,83,95};
int i1=0,i2=0;
for(int i=0;i<a、length;i++)
if(a[i] %2 == 1) i1++;
else i2++;
System、out、println(i1+"\t"+i2);
}
6 4
25、 public class X6_3_2 {
public static void main(String[] args) {
int a[]={36,25,48,14,55,40,32,66};
int b1,b2;
b1=b2=a[0];
for(int i=1;i<a、length;i++)
if ( a[i] >b1 ){
if ( b1 >b2 ) b2=b1;
b1=a[i];
}
System、out、println(b1+"\t"+b2);
}
}
66 55
26、 public class X6_3_3 {
public static void main(String[] args) {
int a[]={36,25,48,14,55,40,32,66 };
int b1,b2;
b1=b2=a[0];
for (int i=1;i<a、length;i++)
if ( a[i]<b1 ) {
if ( b1<b2 ) b2=b1;
b1=a[i];
}
System、out、println(b1+"\t"+b2);
}
}
14 25
27、 public class X6_3_4 {
public static void main(String[] args) {
String str = "abcdabcabfgacd";
char[] a =str、toCharArray;
int i1 =0, i2=0, i;
for(i=0;i<a、length;i++) {
if(a[i] == 'a' ) i1++;
if(a[i] == 'b' ) i2++;
}
System、out、println(i1+"\t"+i2);
}
}
4 3
28、 public class X6_3_5 {
public static void main(String[] args) {
String str ="abcdabcabdaeff";
char[] a = str、toCharArray;
int b[] = new int[5],i;
for(i=0;i<a、length;i++) {
switch (a[i]) {
case 'a': b[0] ++; break;
case 'b': b[1] ++; break;
case 'c': b[2] ++; break;
case 'd': b[3] ++; break;
default : b[4] ++;
}
}
for(i =0; i<5; i++)
System、out、print(b[i]+"\t");
System、out、println;
}
}
4 3 2 2 3
29、 public class X6_3_6 {
public static void main(String[] args) {
int a[] = {76,83,54,62,40,75,90,92,77,84};
int b[] = {60,70,90,101};
int c[]=new int[4],i;
for (i=0; i<a、length; i++) {
int j =0;
while (a[i] >= b[j] ) j ++;
c[j] ++;
}
for (i=0; i<4; i++)
System、out、print(c[i]+"\t");
System、out、println;
}
}
2 1 5 2
30、 public class X6_3_7 {
public static void main(String[] args) {
int a[][] = {{1,2,7,8},{5,6,11,12},{9,10,3,4}};
int m = a[0][0];
int ii = 0, jj = 0;
for (int i=0;i<a、length;i++)
for(int j=0;j<a[i]、length;j++)
if ( a[i][j]>m ){
m =a[i][j];
ii =i;
jj =j;
}
System、out、println(ii+"\t"+jj+"\t"+a[ii][jj]);
}
}
1 3 12
31、 public class X6_3_8 {
public static void main(String[] args) {
String[] a = {"student" ,"worker" ,"cadre" ,"soldier" ,"peasant" };
String s1,s2;
s1 = s2 = a[0];
for( int i = 1; i<a、length;i ++) {
if (a[i]、pareTo(s1)>0) s1=a[i];
if (a[i]、pareTo(s2)<0) s2=a[i];
}
System、out、println(s1+"\t"+s2);
}
}
worker cadre
1、 已知一个数值矩阵A为 ,另一个矩阵B为 ,求出A与B得乘积矩阵C[3][4]并输出出来,其中C中得每个元素C[i][j]等于 。
2、从键盘上输入4行4列得一个实数矩阵到一个二维数组中,然后求出主对角线上元素之乘积以及副对角线上元素之乘积。
3、 (风扇类Fan)设计一个名为Fan得类来表示一个风扇。这个类包括:
三个名为SLOW MEDIUM与FAST而值为1、2与3得常量表示风扇得速度
一个名为speed得int类型私有数据域表示风扇得速度(默认为SLOW)
一个名为ON得boolean类型私有数据域表示风扇就是否打开(默认为false)
一个名为radius得double类型私有数据域表示风扇得半径(默认为5)
一个名为color得String类型私有数据域表示风扇得颜色(默认为blue)
这四个数据域得访问器与修改器
一个创建默认风扇得无参构造函数
一个名为toString得方法返回描述风扇得字符串。如果风扇就是打开得,那么该方法在一个组合得字符串中返回风扇得速度、颜色与半径。如果风扇没有打开,该方法返回一个有“fan is off”与风扇颜色及半径组合成得字符串。
画出该类得UML图。实现这个类。编写一个测试程序,创建两个Fan对象。将第一个对象设置为最大速度、半径为10,颜色为yellow、状态为打开。将第二个对象设置为中等速度、半径为5,颜色为blue、状态为关闭。通过调用它们得toString方法显示这些对象。
4、 (股票类Stock)设计一个名为Stock得类。这个类包括:
一个名为symbol得字符串数据域表示股票代码
一个名为name得字符串数据域表示股票名称
一个名为previousClosingPrice得double型数据域,它存储得就是前一日得股票值
一个名为currentPrice得double型数据域,它存储得就是当时得股票值
创建一支有特定代码与名字得股票得构造方法
一个名为getChangePercent得方法返回从previousClosingPrice变化到currentPrice得百分比
画出该类得UML图。实现这个类。编写一个测试程序,创建一个Stock对象,它得股票代码就是Java,
股票名字为Sun Microsystem Inc,前一日收盘价就是4、5。设置新得当前值为4、35,然后显示市值变化得百分比。
5、 首先让计算机随机产生出10个两位正整数,然后按照从小到大得次序显示出来。
6、 编一个程序,程序中包含以下内容:
一个圆类(Circle),包含:
属性:圆半径radius;常量:PI。
方法:构造方法;求面积方法area;求周长方法:perimeter。
主类(X4_3_1),包含:
主方法main,在主方法中创建圆类得对象c1与c2并初始化,c1得半径为100,c1得半径为200,然后分别显示两个圆得面积与周长。
7、 有一个数列,它得第一项为0,第二项为1,以后每一项都就是它得前两项之与,试产生该数列得前20项,并按逆序显示出来。
8、 编一个程序,程序中包含以下内容:
一个学生类(Student),包含:
属性:学号s_No,姓名s_Name,性别s_Sex,年龄s_Age。
方法:构造方法,显示学号方法showNo,显示姓名方法showName,显示性别方法showSex,显示年龄方法showAge,修改年龄方法modifyAge。
主类(X4_3_2),包含:
主方法main,在其中创建两个学生对象s1与s2并初始化,两个对象得属性自行确定,然后分别显示这两个学生得学号、姓名、性别、年龄,然后修改s1得年龄并显示修改后得结果。
9、 从键盘上输入一个字符串,试分别统计出该字符串中所有数字、大写英文字母、小写英文字母以及其她字符得个数并分别输出这些字符。
10、 课后习题8、2
11、 从键盘上输入一个字符串,利用字符串类提供得方法将大写字母转变为小写字母,小写字母转变为大写字母,再将前后字符对换,然后输出最后结果。
展开阅读全文