2022计算机能力挑战赛程序设计Java组12月试题(部分)个人题解

一、选择题

1.下列叙述,哪项是不正确的( )。

A. Java中变量定义的位置决定了变量的作用域,从作用域角度可把变量分为局部变量和成员变量
B. 类定义的过程就是数据抽象的过程
C. 封装是OOP的基本特征,其目的是进行适当的信息隐藏,使对象更容易使用
D. Java中各种基本类型的数据可以进行混合运算,系统将先把不同类型转换为同一数据类型,再进行运算

2.下列叙述不正确的是( )。

A. Java中方法调用时的参数传递只有一种方式,就是值传递
B. 值传递具有单向传递的特点,无论被调用方法内部如何使用形参变量,都不会影响实参本身的值
C. Java中允许把对象整体通过输出流写入外部文件,称为对象序列化,只有实现了Serializable接口的类的对象才可以被序列化
D. Java中引用类型变量中存放的是对象的内存地址,对地址进行<、>等关系运算没有实际意义,所以Java中引用类型不能参加关系运算

3.关于下列程序,哪一项叙述是正确的( )。
public class Test {
   
    public static void main(String[] args) {
   
        int[][]a;
        a=new int[3][];
        a[0]=new int[] {
   1,2,3};
        a[1]=new int[] {
   4,5,6,7};
        a[2]=new int[] {
   8,9,10};
        System.out.println(a.length);
        System.out.println(a[1].length);
        System.out.println(Arrays.toString(a[2]));
    }
}

A. 编译通过,a[1][1]的值是2
B. 编译通过,运行结果是:3,4,[8, 9, 10]。
C. 编译失败,二维数组创建错误
D. 编译通过,但运行结果不可确定

4.关于下列程序,哪一项叙述是正确的?( )
class A{
   
    int m;
    public A(){
    m=5; }
    public void setM(int n )
    {
    m=n; n++; }
    public int getM()
    {
    return m; }
}
public class Test {
   
    static void test(A ba){
   
        ba.setM(20);
    }
    public static void main(String[] args) {
   
        A a;
        int t=10;
        a=new A(
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值