Java基础程序设计期末模拟试题及参考答案

一、选择题(每小题3分,共计45分)

1. Java属于那种语言?( )

A、机器语言

B、汇编语言

C、高级语言

D、以上都不对

2. 下列选项中,那些属于合法的标识符?( )

A、 username

B、 class

C、 123username

D、 Hello World

3. 以下整形数据类型中,能表示的数据长度最长的是( )

A、byte

B、short

C、int

D、long

4. 下面程序执行完后,a和b的值分别是( )

int a = 3;

b = a++;

A、a = 3、b = 3

B、a = 3、b = 4

C、a = 4、b = 3

D、a = 4、b = 4

5. 下列选项中,使用比较运算符正确的是( )

A、 4 != 3结果为false

B、 4 == 3 结果为false

C、 4 <= 3结果为true

D、 4 > 3结果为false

6. 下面程序执行完后,c和d的值分别是( )

boolean a = false;

boolean b = true;

boolean c = a && b;

boolean d = a || b;

A、true、false

B、true、true

C、false、true

D、false、false

7. 请阅读下面代码。

int a=3

int b=2

switch (b){

    case 1:

        a--

        break;

    case 2:

        a++

    case 3:

        a=a+3

    default:

        a++;

        break;

}

System.out.println(“a=”+a);

上述程序运行结束时,变量a的值为( )

A、4

B、5

C、7

D、8

8.假设int x=2,三元表达式x>0?x+1:5()

A、0

B、2

C、3

D、5

9.数组里面的元素下标是从( )开始编号的

A、1

B、2

C、0

D、-1

10. 声明抽象方法使用的关键字是()

A、abstract

B、extends

C、implements

D、interface

11. private关键字可以被访问的范围是()

A、当前类

B、相同包中的类

C、不同包中的子类

D、全局范围

12. 被声明为private,protected 及public 的类成员,在类外部可以被访问的成员是()

A、只能访问到声明为public的成员

B、只可能访问到声明为protected和public的成员

C、都可以访问

D、都不能访问

13. 下列关于this的说法中,错误的是(   )

A、只能在构造方法中使用this调用其它的构造方法,不能在成员方法中使用。

B、在构造方法中,使用this调用构造方法的语句必须位于第一行,且只能出现一次。

C、this关键字可以用于区分成员变量与局部变量。

D、this可以出现在任何方法中。

14. 下列关于构造方法的描述中,错误的是()

A、构造方法的方法名必须和类名一致。

B、构造方法不能写返回值类型。

C、构造方法可以重载。

D、构造方法的访问权限必须和类的访问权限一致。

15. 阅读下列程序:

class A{

    private int x;

    private static int y;

    public void fac(String s){

        System.out.println(“字符串:”+s);

    }

}

下列选项中描述正确的是( 

A、x,y和s都是成员变量

B、x是成员变量,y是静态成员变量,s是局部变量

C、x和y是静态成员变量,s是局部变量

D、x,y和s都是局部变量

二、判断题(每小题2分,共计20分)(Y=对,N=错)

16. Java19955月正式发布的。( 

17. 编译Java程序需要使用java命令。 

18. 常量0x25AF为二进制数。( 

19. a += 2等同于a = a + 2。(

20. 在逻辑运算符中,运算符“&”和“&&”用于表示逻辑或。( 

21. 循环嵌套是指在一个循环语句的循环体中再定义一个循环语句的语法结构。while、do…while、for循环语句都可以进行嵌套,并且它们之间也可以互相嵌套。

22. do while语句的循环体至少执行一次。(

23. 一个类如果要实现一个接口,可以通过关键字implements来实现这个接口。(

24. 静态变量只能在静态方法中使用。( 

25. 与普通方法一样,构造方法也可以重载。( 

三、简答题(每小题10分,共计20分)

26.简述Java的特点。

27.简述Java语言中的8中基本数据类型及每种数据类型占用的字节数。

四、编程题(每小题15分,共计15分)

28. 请编写程序,实现计算“1+3+5+7+…+99”的值。提示如下:

1)使用循环语句实现自然数1~99的遍历。

2)在遍历过程中,通过条件判断当前遍历的数是否为奇数,如果是就累加,否则不加。

 参考答案(如果有不对的,欢迎指正):

//1-5:CADCB  6-10:CDCCA 11-15:ABDDB 
//16-20:YNNYN 21-25:YYYNY
/*26.
Java语言共有十大特点,分别为:简单性、面向对象、分布性、编译和解释性、稳健性、安全性、可移植性、高性能、多线索性、动态性。
1、简单性:Java语言继承了C++语言的优点,去掉了C++中学习起来比较难的多继承、指针等概念,所以Java语言学习起来更简单,使用起来也更方便。
2、面向对象:Java是一种面向对象的编程语言。
3、分布性:Java设计成支持在网络上应用,它是分布式语言。所以只要用Java编写了一个程序,就可以到处应用。可以节省大量人力物力。
4、编译和解释性:Java编译程序生成字节码,而不是通常的机器码,这使得Java开发程序比用其他语言开发程序快很多。
5、稳健性:Java刚开始被设计出来就是为了写高可靠和稳健的软件的。所以用Java写可靠的软件很容易。目前许多第三方交易系统、银行平台的前台和后台电子交易系统等都会用Java语言开发。
6、安全性:Java的存储分配模型是它防御恶意代码的主要方法之一。所以很多大型企业级项目开发都会选择用Java开发。
7、可移植性:Java并不依赖平台,用Java编写的程序可以运用到任何操作系统上。
8、高性能:Java是一种先编译后解释的语言,所以它不如全编译性语言快。但Java设计者制作了“及时”编译程序,这样就可以实现全编译了。
9、多线索性:Java是多线索语言,它可以同时执行多个程序,能处理不同任务
10、动态性:Java语言设计成适应于变化的环境,它是一个动态的语言。
*/
/*27.
Java语言中的8种基本数据类型分别是:
byte (1字节)
short (2字节)
int (4字节)
long (8字节)
float (4字节)
double (8字节)
char (2字节)
boolean (1位)
byte、short、int、long、float和double这些数据类型用于保存数字,而char数据类型用于保存字符。boolean数据类型用于保存布尔值。
*/
//28.
//(1)
public class L1 {
	public static void main(String[] args) {
              for (int i = 1; i <= 99; i++) {
                     System.out.println(i);
}
}
}
//(2)
public class L1 {
	public static void main(String[] args) {
		int sum = 0;                           // 定义变量sum,用于记住和
		for (int i = 1; i <= 100; i++) {
			if (i % 2 == 0) {                // i是一个偶数,不累加
				continue;           // 结束本次循环
			}
			sum += i;                        // 实现sum和i的累加
		}
		System.out.println("sum = " + sum);
	}
 }
  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
Java面向对象程序设计期末考试试题及答案 1. 请简要说明面向对象程序设计的三大特征。 答案:封装、继承和多态是面向对象程序设计的三大特征。封装指的是将数据和操作数据的方法封装在一起,可以通过访问权限控制提高安全性;继承指的是子类可以继承父类的属性和方法,便于代码重用;多态指的是同一个方法名可以有多种不同的实现方式,实现了代码的灵活性和扩展性。 2. 请使用Java语言编写一个简单的类,并在主函数中实例化这个类。 答案:代码如下 ```java public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } public static void main(String[] args) { Person person = new Person("Tom", 25); System.out.println("Name: " + person.getName()); System.out.println("Age: " + person.getAge()); } } ``` 3. 请简要说明抽象类和接口的区别。 答案:抽象类是一种包含抽象方法的类,不能被实例化,只能被继承;接口是一种只包含抽象方法和常量的类,实现接口的类必须实现接口中定义的所有方法。一个类可以实现多个接口,但只能继承一个抽象类。 4. 请使用多态的概念简要说明方法重写和方法重载的区别。 答案:方法重写是子类重新定义了父类的方法,实现了多态,调用父类引用指向子类对象时将调用子类的方法;方法重载是在一个类中可以定义多个方法名相同但参数列表不同的方法,通过参数的类型、个数和顺序来区分调用不同的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员老李头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值