java 每日一练 (9)
迪丽瓦拉
2025-05-30 20:55:05
0

文章目录

  • 1. 单选
  • 2. 编程

1. 单选


1. 下面程序的输出是:()


在这里插入图片描述


A : FmNwxy B :fmnwxy C :wxyfmn D : Fmnwxy


答案 : D , 这里主要考察 toUpperCase 和 replace 方法 , 注意点 : toUpperCase 方法 将小写字母转为大写字母并不会影响原字符串而是生成一个新的字符串.

在这里插入图片描述


2. 在 java 中,一个类可同时定义为许多同名的方法,这些方法的形式参数个数,类型或顺序各不相同,传回的值可能各不相同,这种面向对象的特性称为()


A : 隐藏 B : 覆盖 C : 重载 D :无此特性


答案 : C

A : java 中并没有 隐藏

B : 覆盖 其实就是 重写 , 子类继承 父类 ,将父类的方法进行了重写 , 重写 : 方法名相同 ,参数列表相同 (数据类型 ,个数 ,顺序) 返回值相同 (有一个特例,就是 返回值构成父子类).

C : 重载 : 方法名相同 , 参数列表不同 (数据类型, 个数, 顺序 ) , 返回值不做要求.

D : 根据题目 分析 很明显 有这个特性 ,这个特性就是 重载.


3. 关于 JAVA 堆,下面说法错误的是()

A 所有类的实例和数组都是在堆上分配内存的

B 对象所占的堆内存是由自动内存管理系统回收

C 堆内存由存活和死亡的对象,空闲碎片区组成

D 数组是分配在栈中的


答案 : D


A : 正确 , 类的实例 和 数组 都是通过 new 关键字 创建的 ,通过 new 关键字创建出来的都是分配在堆上的 .

这种静态初始化数组, jvm 会通过 new 来创建数组对象.

在这里插入图片描述


B : 正确

C :正确

D : 错误 数组分配在 堆上


4.一个以“.java”为后缀的源文件

A 只能包含一个public类,类名必须与文件名相同

B 只能包含与文件名相同的public类以及其中的内部类

C 只能有一个与文件名相同的public类,可以包含其他非public类(不考虑内部类)

D 可以包含任意public类


答案 : C


A : 一个 .java 为后缀的 源文件 ,可以包含 一个 public 修饰的类 (这个类名与 .java 名相同) ,还可以包含 其他类 (外部类,内部类) 所以 A 错误

B : 错误 , 看可以包含 外部类 .

C : 正确

D : 错误 只能包含一个 public 修饰的类


5. JAVA语言的下面几种数组复制方法中,哪个效率最高?


A for循环逐一复制 , B System.arraycopy ,C Arrays.copyOf , D 使用clone方法


答案 : B


A : for 循环逐一复制效率是最低的 , for的速度之所以最慢 是因为下标表示法每次都从起点开始询问道指定下标出,另外 就是它每一次循

环就要判断依次是否达到最大长度和进行一次额外的记录下标值的加法运算.

B : System.arraycopy 是比较推荐的方法 , 这个方法 针对非基本类型拷贝,拷贝的是对象,效率是非常高的

C : Arrays.copyOf

在这里插入图片描述

D : clone 方法 对于 对象来说是深拷贝 ,对于 数组来说是浅拷贝 , 它的效率要高于 Arrays.copyOf , 低于 System.arraycopy

总结 : System.arraycopy > Object.clone > Arrays.copyOf > for

如不不太清楚 clone 这个方法 ,可以看这个回顾一下

这篇文章关于 ,Cloneable 接口


6. ()仅包含方法定义和常量值。


A : 接口 B: 变量 C : 单元 D : 成员


答案 : A , 这里 B , C , D 都不符合实际 , 接口 是可以定义 方法 和常量值的.

在这里插入图片描述


7. 对文件名为Test.java的java代码描述正确的是()


这里先不放在 IDEA 上展示 ,因为放上去 一下就知道答案了

class Person {String name = "No name";public Person(String nm) {name = nm;}
}class Employee extends Person {String empID = "0000";public Employee(String id) {empID = id;}
}public class Test {public static void main(String args[]) {Employee e = new Employee("123");System.out.println(e.empID);}
}


A : 输出:0000 B : 输出:123 C 编译报错 D 输出:No name


答案 : C

在这里插入图片描述


8. 有关下述Java代码描述正确的选项是____。

在这里插入图片描述


A 编译不通过

B 编译通过,运行异常,报NullPointerException

C 编译通过,运行异常,报IllegalArgumentException

D 编译通过,运行异常,报NoSuchMethodException

E 编译通过,运行异常,报Exception

F 运行正常,输出testMethod


答案 : F , 本题 主要考察 static , 关于 static 修饰的方法 无论 new 多少个 实例对象, 被 static 修饰的 只有一份 , 属于类本身 , 这里 testMethod 方法 被 static 修饰 , 这个方法属于类的, 就可以直接通过类名.testMethod() 调用这个方法. ,我们这里将 null 强转为 Test2 就可以 通过 . 来调用 testMethod 方法


运行结果 :

在这里插入图片描述

关于 static 修饰的 方法 和变量 知识点

下列java程序的输出结果为____。

在这里插入图片描述

A hello and ab

B hello and cb

C hello and a

D test ok and ab

E test ok and cb

F test ok and c


答案 : B

在这里插入图片描述


10. 在jdk1.5之后,下列 java 程序输出结果为______。

在这里插入图片描述

A true,false

B true,true

C false,true

D false,false

E 对于不同的环境结果不同

F 程序无法执行


答案 : B

在这里插入图片描述


关于装箱拆箱相关知识

2. 编程

题目一 : 另类加法_牛客题霸_牛客网 (nowcoder.com)

在这里插入图片描述



图一 :

在这里插入图片描述


代码 :

在这里插入图片描述


题目二 : 走方格的方案数_牛客题霸_牛客网 (nowcoder.com)


在这里插入图片描述


解析 :


图一 :

在这里插入图片描述


图二 :

在这里插入图片描述


附上代码 :

import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static int cnt = 0;public static void main(String[] args) {Scanner sc = new Scanner(System.in);int m = sc.nextInt();int n = sc.nextInt();int[][] arr = new int[m + 1][n + 1];dp(arr, 0, 0);System.out.println(cnt);}private static void dp(int[][] arr, int i, int j) {// 判断当前的 i , j 是否越界if (i > arr.length || j > arr[0].length) {return;}// 判断是否走到了 预期地点if (i == arr.length - 1 && j == arr[0].length - 1) {// 让 全局变量 ++cnt++;}// 递归 走右边dp(arr, i + 1, j);// 递归 走下面dp(arr, i, j + 1);}}


方法二 :


图一 :

在这里插入图片描述


图二 :

在这里插入图片描述

附上代码 :

import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int m = sc.nextInt();int cnt = dp(m, n);System.out.println(cnt);}private static int dp(int m, int n) {if (m == 1 && n >= 1 || n == 1 && m >= 1) {return m + n;}return dp(m - 1, n) + dp(m, n - 1);}
}

相关内容

热门资讯

linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
C++ 机房预约系统(六):学... 8、 学生模块 8.1 学生子菜单、登录和注销 实现步骤: 在Student.cpp的...
A.机器学习入门算法(三):基... 机器学习算法(三):K近邻(k-nearest neigh...
数字温湿度传感器DHT11模块... 模块实例https://blog.csdn.net/qq_38393591/article/deta...
有限元三角形单元的等效节点力 文章目录前言一、重新复习一下有限元三角形单元的理论1、三角形单元的形函数(Nÿ...
Redis 所有支持的数据结构... Redis 是一种开源的基于键值对存储的 NoSQL 数据库,支持多种数据结构。以下是...
win下pytorch安装—c... 安装目录一、cuda安装1.1、cuda版本选择1.2、下载安装二、cudnn安装三、pytorch...
MySQL基础-多表查询 文章目录MySQL基础-多表查询一、案例及引入1、基础概念2、笛卡尔积的理解二、多表查询的分类1、等...
keil调试专题篇 调试的前提是需要连接调试器比如STLINK。 然后点击菜单或者快捷图标均可进入调试模式。 如果前面...
MATLAB | 全网最详细网... 一篇超超超长,超超超全面网络图绘制教程,本篇基本能讲清楚所有绘制要点&#...
IHome主页 - 让你的浏览... 随着互联网的发展,人们越来越离不开浏览器了。每天上班、学习、娱乐,浏览器...
TCP 协议 一、TCP 协议概念 TCP即传输控制协议(Transmission Control ...
营业执照的经营范围有哪些 营业执照的经营范围有哪些 经营范围是指企业可以从事的生产经营与服务项目,是进行公司注册...
C++ 可变体(variant... 一、可变体(variant) 基础用法 Union的问题: 无法知道当前使用的类型是什...
血压计语音芯片,电子医疗设备声... 语音电子血压计是带有语音提示功能的电子血压计,测量前至测量结果全程语音播报࿰...
MySQL OCP888题解0... 文章目录1、原题1.1、英文原题1.2、答案2、题目解析2.1、题干解析2.2、选项解析3、知识点3...
【2023-Pytorch-检... (肆十二想说的一些话)Yolo这个系列我们已经更新了大概一年的时间,现在基本的流程也走走通了,包含数...
实战项目:保险行业用户分类 这里写目录标题1、项目介绍1.1 行业背景1.2 数据介绍2、代码实现导入数据探索数据处理列标签名异...
记录--我在前端干工地(thr... 这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前段时间接触了Th...
43 openEuler搭建A... 文章目录43 openEuler搭建Apache服务器-配置文件说明和管理模块43.1 配置文件说明...