主题:急求答案
1. 在面向对象编程中,一个类型由什么组成?( )
A public
B identifier
C data
D operations
2. 下面哪些是面向对象的基本特性:( )
A 多态
B 继承
C 封装
D 接口
3. 在java中访问权限的限制由严格到宽松依次是:( )
A public
B protected
C private
D default(no modifier)
4. 以下方法声明正确的有:( )
A public static synchronized void writeLog(String msg)
B synchronized public static writeLog(String msg)
C public final abstract void writeLog(String msg)
D final public void writeLog(String msg)
E abstract synchronized void writeLog(String msg)
5. Java方法的参数传递对于基本数据类型如int, byte等,参数传递是 C ;对自定义数据类型,参数传递是:( )
A by reference
B by pointer
C by value
D by address
6. 有如下程序:
public class ArugmentTest {
static class IntA {
private int a;
public IntA(int a) {
this.a = a;
}
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
}
static public void change(int a) {
a = 3;
}
static public void change(IntA a) {
a.setA(3);
}
static public void changeRef(IntA a) {
a = new IntA(9);
}
public static void main(String[] args) {
int a = 2;
change(a);
System.out.print(a);
IntA ia = new IntA(5);
change(ia);
System.out.print(ia.getA());
changeRef(ia);
System.out.println(ia.getA());
}
}
请问在控制台上输出的是:( )
A 233
B 333
C 259
D 339
7. 下面程序出错的有哪些行?( )
1)class Student{
2) private String name; private int age;
3) public Student(){}
4) public void setName(String name){ this.name=name; }
5) void setAge(int age){ this.age= age; }
6)}
7)public class StudentTest{
8) public void static main(String[] args){
9) Student s = new Student();
10) s.name = “Hellen”;
11) s.setAge(20);
12) }
13)}
A 1)
B 4)
C 8)
D 10)
8. 方法重载(overloading)必须满足:( )
A 在不同class中定义的方法
B 在同一类型中定义的方法
C 方法名必须相同
D 返回类型必须相同
E 参数一定不同
F 参数可以相同
9. 对于构造方法(constructor)描述正确的有:( )
A 构造方法没有返回类型
B 构造方法一定是public的方法
C 如果我们没有显示定义构造方法,系统会提供一个缺省的
D 构造方法不能重载
10. 下列说法正确的是:( )
A JAVA语言允许多继承
B 构造函数只能是public的
C JAVA中只有单继承
D 必须要提供构造函数
11. 显示调用父类型的构造方法是通过调用什么来完成的?( )
A constructor
C methods
C fields
D super
以下对于方法覆盖(overriding)的说法正确的有:( )
A 方法覆盖发生在同一类中
B 方法的覆盖发生在子类型中
C 方法名一定要一样
D 参数一定要一样
E 返回类型可以不一样
F 访问权限只能一样
G 如有异常,子类型中抛出的异常与父类型中的一致或是其子类型
H 静态方法可以被静态方法覆盖
下面哪些语句会被正确编译?( )
A File f = new File("/", "autoexec.bat");
B DataInputStream d = new DataInputStream(System.in);
C OutputStreamWriter o = new OutputStreamWriter(System.out);
D RandomAccessFile r = new RandomAccessFile("OutFile");
以下描述正确的有:( )
A final class不能被继承
B final变量不能被修改
C final成员变量可以在构造方法中赋值
D final方法不能被覆盖(overriden)
以下描述正确的有:( )
A abstract class一定有abstract method(s)
B abstract class可以没有abstract method(s)
C 定义abstract class的目的是为了被继承
D interface中定义的方法全是abstract methods
E interface中定义的变量全部是final static变量
请看如下代码段:
1)class Super{
2) public float getNum(){
3) return 3.0f;
4) }
5)}
6)
7) public class Sub extends Super{
8)_____________
9) }
下面哪个方法放在第8行会产生一个编译错误?( )
A public float getNum(){return 4.0f;}
B public void getNum(){}
C public void getNum(double d){}
D public double getNum(float d){return 4.0d;}
1.按照以下要求编写程序
定义一个类A,类中有一个private的整型变量data;一个private的字符串对象str。类中有两个构造函数,一个不含参数,初始化data 和str为其缺省值;另一个有两个参数,分别用来初始化data 和str。类中还定义三个方法,方法头的定义和其功能如下:
1) public void add(int k,String s):该方法把data和str的值分别加上k和s。
2) public void clearA():该方法把data和str的值分别清除为其缺省值。
3) public String toString():该方法把data和str的值转变为字符串返回,便于显示。
编写测试类TestA,创建类A对象并使用类A中的三个方法。并写出输出结果。
2.按照以下要求编写程序
1)编写一个矩形类Rect,包含:
两个protected属性:矩形的宽width;矩形的高height。
两个构造器方法:
a)一个带有两个参数的构造器方法,用于将width和height属性初化;
b)一个不带参数的构造器,将矩形初始化为宽和高都为10。
两个方法:
a)求矩形面积的方法area()
b)求矩形周长的方法perimeter()
2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用矩形的左上角坐标来标识,包含:
添加两个属性:矩形左上角坐标startX和startY。
两个构造器方法:
a)带4个参数的构造器方法,用于对startX、startY、width和height属性初始化;
b)不带参数的构造器方法,将矩形初始化为左上角坐标、长和宽都为0的矩形;
添加一个方法:
判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩形内,返回true, 否则,返回false。
提示:点在矩形类是指满足条件:
x>=startX&&x<=(startX+width)&&y>startY&&y<=(startY+height)
3)编写PlainRect类的测试程序
(1)创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;
(2)计算机并打印输出矩形的面积和周长;
(3)判断点(25.5,13)是否在矩形内,并打印输出相关信息。
.按照以下要求编写程序
斯诺克台球共有15个一分球,2,3,4,5,6,7分球各一个,规则是先打一个最低分球,然后可以打一个其他分值的球,如此反复,如果台面还有更低分值的球,打入的高分球计分,同时拿出来放回原位置,要求写一段简单的java函数,实现输入台面上剩余球的数目,计算出可得的最高分。(不考虑罚分等特殊情况)
2.按照以下要求编写程序
编程:设计一个形状类,方法:求周长和求面积,形状类的子类:Rect(矩形),Circle(圆形),Rect类的子类:Square(正方形)。不同的子类会有不同的计算周长和面积的方法。
创建三个不同的形状对象,放在Shape类型的数组里,分别打印出每个对象的周长和面积
\
A public
B identifier
C data
D operations
2. 下面哪些是面向对象的基本特性:( )
A 多态
B 继承
C 封装
D 接口
3. 在java中访问权限的限制由严格到宽松依次是:( )
A public
B protected
C private
D default(no modifier)
4. 以下方法声明正确的有:( )
A public static synchronized void writeLog(String msg)
B synchronized public static writeLog(String msg)
C public final abstract void writeLog(String msg)
D final public void writeLog(String msg)
E abstract synchronized void writeLog(String msg)
5. Java方法的参数传递对于基本数据类型如int, byte等,参数传递是 C ;对自定义数据类型,参数传递是:( )
A by reference
B by pointer
C by value
D by address
6. 有如下程序:
public class ArugmentTest {
static class IntA {
private int a;
public IntA(int a) {
this.a = a;
}
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
}
static public void change(int a) {
a = 3;
}
static public void change(IntA a) {
a.setA(3);
}
static public void changeRef(IntA a) {
a = new IntA(9);
}
public static void main(String[] args) {
int a = 2;
change(a);
System.out.print(a);
IntA ia = new IntA(5);
change(ia);
System.out.print(ia.getA());
changeRef(ia);
System.out.println(ia.getA());
}
}
请问在控制台上输出的是:( )
A 233
B 333
C 259
D 339
7. 下面程序出错的有哪些行?( )
1)class Student{
2) private String name; private int age;
3) public Student(){}
4) public void setName(String name){ this.name=name; }
5) void setAge(int age){ this.age= age; }
6)}
7)public class StudentTest{
8) public void static main(String[] args){
9) Student s = new Student();
10) s.name = “Hellen”;
11) s.setAge(20);
12) }
13)}
A 1)
B 4)
C 8)
D 10)
8. 方法重载(overloading)必须满足:( )
A 在不同class中定义的方法
B 在同一类型中定义的方法
C 方法名必须相同
D 返回类型必须相同
E 参数一定不同
F 参数可以相同
9. 对于构造方法(constructor)描述正确的有:( )
A 构造方法没有返回类型
B 构造方法一定是public的方法
C 如果我们没有显示定义构造方法,系统会提供一个缺省的
D 构造方法不能重载
10. 下列说法正确的是:( )
A JAVA语言允许多继承
B 构造函数只能是public的
C JAVA中只有单继承
D 必须要提供构造函数
11. 显示调用父类型的构造方法是通过调用什么来完成的?( )
A constructor
C methods
C fields
D super
以下对于方法覆盖(overriding)的说法正确的有:( )
A 方法覆盖发生在同一类中
B 方法的覆盖发生在子类型中
C 方法名一定要一样
D 参数一定要一样
E 返回类型可以不一样
F 访问权限只能一样
G 如有异常,子类型中抛出的异常与父类型中的一致或是其子类型
H 静态方法可以被静态方法覆盖
下面哪些语句会被正确编译?( )
A File f = new File("/", "autoexec.bat");
B DataInputStream d = new DataInputStream(System.in);
C OutputStreamWriter o = new OutputStreamWriter(System.out);
D RandomAccessFile r = new RandomAccessFile("OutFile");
以下描述正确的有:( )
A final class不能被继承
B final变量不能被修改
C final成员变量可以在构造方法中赋值
D final方法不能被覆盖(overriden)
以下描述正确的有:( )
A abstract class一定有abstract method(s)
B abstract class可以没有abstract method(s)
C 定义abstract class的目的是为了被继承
D interface中定义的方法全是abstract methods
E interface中定义的变量全部是final static变量
请看如下代码段:
1)class Super{
2) public float getNum(){
3) return 3.0f;
4) }
5)}
6)
7) public class Sub extends Super{
8)_____________
9) }
下面哪个方法放在第8行会产生一个编译错误?( )
A public float getNum(){return 4.0f;}
B public void getNum(){}
C public void getNum(double d){}
D public double getNum(float d){return 4.0d;}
1.按照以下要求编写程序
定义一个类A,类中有一个private的整型变量data;一个private的字符串对象str。类中有两个构造函数,一个不含参数,初始化data 和str为其缺省值;另一个有两个参数,分别用来初始化data 和str。类中还定义三个方法,方法头的定义和其功能如下:
1) public void add(int k,String s):该方法把data和str的值分别加上k和s。
2) public void clearA():该方法把data和str的值分别清除为其缺省值。
3) public String toString():该方法把data和str的值转变为字符串返回,便于显示。
编写测试类TestA,创建类A对象并使用类A中的三个方法。并写出输出结果。
2.按照以下要求编写程序
1)编写一个矩形类Rect,包含:
两个protected属性:矩形的宽width;矩形的高height。
两个构造器方法:
a)一个带有两个参数的构造器方法,用于将width和height属性初化;
b)一个不带参数的构造器,将矩形初始化为宽和高都为10。
两个方法:
a)求矩形面积的方法area()
b)求矩形周长的方法perimeter()
2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用矩形的左上角坐标来标识,包含:
添加两个属性:矩形左上角坐标startX和startY。
两个构造器方法:
a)带4个参数的构造器方法,用于对startX、startY、width和height属性初始化;
b)不带参数的构造器方法,将矩形初始化为左上角坐标、长和宽都为0的矩形;
添加一个方法:
判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩形内,返回true, 否则,返回false。
提示:点在矩形类是指满足条件:
x>=startX&&x<=(startX+width)&&y>startY&&y<=(startY+height)
3)编写PlainRect类的测试程序
(1)创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;
(2)计算机并打印输出矩形的面积和周长;
(3)判断点(25.5,13)是否在矩形内,并打印输出相关信息。
.按照以下要求编写程序
斯诺克台球共有15个一分球,2,3,4,5,6,7分球各一个,规则是先打一个最低分球,然后可以打一个其他分值的球,如此反复,如果台面还有更低分值的球,打入的高分球计分,同时拿出来放回原位置,要求写一段简单的java函数,实现输入台面上剩余球的数目,计算出可得的最高分。(不考虑罚分等特殊情况)
2.按照以下要求编写程序
编程:设计一个形状类,方法:求周长和求面积,形状类的子类:Rect(矩形),Circle(圆形),Rect类的子类:Square(正方形)。不同的子类会有不同的计算周长和面积的方法。
创建三个不同的形状对象,放在Shape类型的数组里,分别打印出每个对象的周长和面积
\