秋招备战笔试Day1

目录

单选

1. 在 Java 中,存放字符串常量的对象属于( )类对象。

2.已知如下类定义: 如下哪句可以正确地加入子类中?

3. 下列选项中属于面向对象编程主要特征的是()

4.关于下列程序段的输出结果,说法正确的是:( )

5.下列代码的执行结果是:( )

6.方法通常存储在进程中的哪一区()

7.不考虑反射,关于私有访问控制符 private 修饰的成员变量,以下说法正确的是()

8.类声明中,声明一个类不能再被继承的关键字是()

9.假设 A 类有如下定义,设 a 是 A 类的一个实例,下列语句调用哪个是错误的?()

编程题

1.组队竞赛

题目重现

思路

代码

2.删除公共字符

题目重现

思路

代码


单选

1. 在 Java 中,存放字符串常量的对象属于( )类对象。

A. Character

B. String

C. StringBuffer

D. Vector

A.Character是字符类型的包装类,

C.StringBuffer 不是字符串常量,字符串常量应该是String s ="str";这样的形式,而StringBuffer 必须要new一下。

D.Vector是一个集合类

2.已知如下类定义: 如下哪句可以正确地加入子类中?

class Base { public Base (){//...} public Base ( int m ){//...} public void fun( int n ){//...}
} 
public class Child extends Base{ // member methods 
}

A. private void fun( int n ){ //...}

B. void fun ( int n ){ //... }

C. protected void fun ( int n ) { //... }

D. public void fun ( int n ) { //... }

首先这是一个叫Base的类,有不带参数的构造方法,带一个参数的构造方法,这里构成了重载。有一个fun方法,还有一个Child继承了Base类。

选项中所有的方法全是fun的方法,也就是说这里要与父类的fun方法构成一个重写的关系,重写的特点是:

1、必须是在继承里,

2、方法名、返回值类型、参数个数和参数类型 都必须相同

3、派生类重写的方法的访问权限不能低于基类的权限

4、派生类抛出的异常应该和基类相等或比基类更小

也就是说,这道题其实考察的是访问权限修饰符的权限大小,众所周知:public>protected>defaut(默认)>private

3. 下列选项中属于面向对象编程主要特征的是()

A. 继承

B. 自顶向下

C. 模块化

D. 逐步求精

很简单的一道常识题:面向对象编程的主要特性是:继承,多态,封装,组合

剩下的选项都是结构化程序设计原则。

4.关于下列程序段的输出结果,说法正确的是:( )

public class MyClass{
static int i;
public static void main(String argv[]){
System.out.println(i);
}
}

A. 有错误,变量i没有初始化。

B. null

C. 1

D. 0

首先,MyClass类中有一个静态的成员变量i,在main中输出这个i。

如果成员变量没有初识化会默认赋予一个0值。

5.下列代码的执行结果是:( )

public class Test{public static void main(String args[]){
System.out.println(100%3);
System.out.println(100%3.0);}
}

A. 1和1

B. 1和1.0

C. 1.0和1

D. 1.0和1.0

还是很简单的题。

这里考的是一个%求余数的问题。100%3 = 1;100%3.0 = 1.0;

6.方法通常存储在进程中的哪一区()

A. 堆区

B. 栈区

C. 全局区

D. 方法区

Java堆区存储的是对象实例,而栈区存储的是基本数据类型和引用变量 。

方法本身不占内存,方法的指令都会放到方法区。

public void fun(){

float f = 12.5f;

}

这里,f存储于栈区,而这个方法指令存储在方法区。

7.不考虑反射,关于私有访问控制符 private 修饰的成员变量,以下说法正确的是()

A. 可以三种类所引用:该类自身、与它在同一包中的其他类,在其他包中的该类的子类

B. 可以被两种类访问和引用:该类本身、该类的所有子类

C. 只能被该类自身所访问和修改

D. 只能被同一个包中的类访问

private修饰的成员变量只能在本类中访问,其他类无法直接访问。

如果需要在其他类中访问,可以通过getter和setter方法进行访问 。

8.类声明中,声明一个类不能再被继承的关键字是()

A. public

B. abstract

C. final

D. static

abstract关键字可以用来修饰类和方法,表示抽象类和抽象方法。它的作用是将子类的公共属性和不能确认的方法提取到抽象类,确认的方法也可以写到抽象类,子类继承抽象类,简化代码操作 。

final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)。当用final修饰一个类时,表明这个类不能被继承。当用final修饰一个方法时,表明这个方法不能被重写。当用final修饰一个变量时,表明这个变量只能被赋值一次,即常量 。

static关键字可以用来修饰变量和方法。当用static修饰一个变量时,这个变量就成为了一个类的成员变量,而不是实例变量。这意味着,这个变量在所有实例之间共享,而不仅仅是在某个特定的实例中。

9.假设 A 类有如下定义,设 a 是 A 类的一个实例,下列语句调用哪个是错误的?()

public class A
{
public int i;
static String s;
void method1(){}
static void method2(){}
}

A. System.out.println(a.i);

B. a.method1();

C. A.method1();

D. A.method2()

i是成员变量,通过对象的引用来访问肯定没问题。A正确

method1是成员方法,通过对象的引用来访问也没问题,B正确

类名去访问method1是错误的,类名可以去访问静态方法。而method1很明显不是静态方法。C错误。D正确。

编程题

1.组队竞赛

相关题目链接:组队竞赛_牛客笔试题_牛客网

题目重现

思路

这样分组能组成最大的sum。

这个水平值的数组下标可以推导出一个公式 : nums[nums.length-(2*(i+1))]

代码

    public static void main(String[] args) {//进行数据的接收Scanner scanner = new Scanner(System.in);while (scanner.hasNext()){int n = scanner.nextInt();//处理空格scanner.nextLine();int[] nums = new int[3*n];//接收数组数据for (int i = 0; i < 3*n; i++) {nums[i] = scanner.nextInt();}//对数组进行排序,挑出最小的前n个数Arrays.sort(nums);long sum = 0;for (int i = 0; i < n; i++) {//水平值是三数排序后第二大的数   举例 5 2 8 5 1 5//排序后 1 2 5 5 5 8//当前n=2 取出的最小的两个数是 1 2//1 5 5     2 5 8//也就是说  水平值是 数组的长度-(2*(i+1))sum += nums[nums.length-(2*(i+1))];}System.out.println(sum);}}

2.删除公共字符

相关题目链接:删除公共字符_牛客题霸_牛客网

题目重现

思路

首先,我们使用一个哈希表来存储要删除的字符串s2中的字符,然后再次循环,查看s1中的字符是否在哈希表中出现了,如果出现则表示这个字符是要删除的字符,如果没有出现表示这是不需要被删除的字符,然后将其添加到stringBuffer中,最后输出stringBuffer。

代码

    //删除公共字符public static void main1(String[] args) {//接收处理Scanner scanner = new Scanner(System.in);String s1 = scanner.nextLine();String s2 = scanner.nextLine();//开始进行字符串的处理HashMap<Character,Integer> hashMap = new HashMap<>();//构建要输出的StringBuffer stringBuffer = new StringBuffer();//开始进行操作//查看要删除的字符是什么for (int i = 0; i < s2.length(); i++) {if (hashMap.get(s2.charAt(i)) == null){hashMap.put(s2.charAt(i),1);}}for (int i = 0; i < s1.length(); i++) {if (hashMap.get(s1.charAt(i)) == null){stringBuffer.append(s1.charAt(i));}System.out.println(stringBuffer);}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/13057.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

7年经验之谈 —— 浅谈web性能测试

什么是性能测试&#xff1f; web性能应该注意些什么&#xff1f; 性能测试&#xff0c;简而言之就是模仿用户对一个系统进行大批量的操作&#xff0c;得出系统各项性能指标和性能瓶颈&#xff0c;并从中发现存在的问题&#xff0c;通过多方协助调优的过程。而web端的性能测试…

联发科CEO:未获准向华为供货,换机潮已过去,手机需求不会更差

据钜亨网报道&#xff0c;联发科近期召开了业绩说明会。蔡力行&#xff0c;该公司副董事长兼首席执行官&#xff0c;表明当前手机市场需求保持稳定&#xff0c;并且随着过去两年用户更换潮的过去&#xff0c;对手机市场明年有一定期望。 根据蔡力行的指示&#xff0c;联发科正在…

Notepad++工具通过正则表达式批量替换内容

1.每行末尾新增特定字符串 CtrlH弹出小窗口&#xff1b;查找目标输入$&#xff0c;替换为输入特定字符串&#xff1b;选中循环查找&#xff0c;查找模式选正则表达式&#xff1b;最后点击全部替换 2.每行行首新增特定字符串 CtrlH弹出小窗口&#xff1b;查找目标输入^&…

Windows如何安装Django及如何创建项目

目录 1、Windows安装Django--pip命令行 2、创建项目 2.1、终端创建项目 2.2、在Pycharm中创建项目 2.3、二者创建的项目有何不同 2.4、项目目录说明 1、Windows安装Django--pip命令行 安装Django有两种方式&#xff1a; pip命令行【推荐--简单】手动安装【稍微复杂一丢丢…

无涯教程-jQuery - Puff方法函数

吹气效果可以与show/hide/toggle一起使用。通过按比例放大元素并同时隐藏它&#xff0c;可以形成粉扑效果。 Puff - 语法 selector.hide|show|toggle( "puff", {arguments}, speed ); 这是所有参数的描述- model - 效果的模式。可以是"显…

【嵌入式Linux系统开发】——系统移植概述

目录 &#x1f349;&#x1f349;一、什么是嵌入式系统 &#x1f349;&#x1f349;二、嵌入式系统操作 &#x1f349;&#x1f349;三、嵌入式Linux的特点 &#x1f349;&#x1f349;四、嵌入式系统的组成 1、硬件和软件 2、硬件层 3、中间层 4、软件层 5、 功能层与执…

如何用Python统计CSDN质量分

文章目录 CSDN质量分查询selenium爬取博客地址单篇测试批量查询分析 CSDN质量分查询 CSDN对博客有一套分数评价标准&#xff0c;其查询入口在这里&#xff1a;质量分查询&#xff0c;效果大致如下 如果质量分太低&#xff0c;就会在博文的标题下面出现黄底黄字&#xff1a; 这…

Redis简介,设置redis内存大小,设置redis淘汰机制,查看内存占用情况,内存占用分析

为什么使用Redis缓存数据库 我们日常的开发&#xff0c;无非是对数据的处理。程序的定义也可以这样狭义的解释&#xff1a;算法数据。可见数据库是多么重要的工具。但是关系型数据库的读写能力在200-1000次/秒不等&#xff0c;服务器好点可能更多&#xff0c;这导致在高并发的…

排序链表——力扣148

文章目录 题目描述法一 自顶向下归并排序法二&#xff09;自底向上归并排序 题目描述 题目的进阶问题要求达到 O(nlogn) 的时间复杂度和 O(1) 的空间复杂度&#xff0c;时间复杂度是 O(nlogn) 的排序算法包括归并排序、堆排序和快速排序&#xff08;快速排序的最差时间复杂度是…

【C#】.Net Framework框架下的Authorize权限类

2023年&#xff0c;第31周&#xff0c;第3篇文章。给自己一个目标&#xff0c;然后坚持总会有收货&#xff0c;不信你试试&#xff01; 在C#的.NET Framework中&#xff0c;你可以使用Authorize类来处理权限认证。Authorize类位于System.Web.Mvc命名空间中&#xff0c;它提供了…

关于Docker的知识点

Docker是一个快速交付应用、运行应用的技术。 Docker基本操作--容器 示例&#xff1a;创建运行一个Nginx容器

Python不是一门伟大的语言

作为一门简洁易用、生态蓬勃且具有高泛用性的编程语言&#xff0c;Python一直以来都被不少人称作“编程语言中的瑞士军刀”。 尤其随着近来AI热潮席卷全球&#xff0c;Python在编程语言圈中的地位也随之水涨船高&#xff0c;甚至一度被视作AI专用语言或大数据专用语言。 然而…

QT第四讲

思维导图 基于QT的网络聊天室 widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include<QTcpServer> //服务器类 #include<QTcpSocket> //客户端类 #include<QMessageBox> //对话框类 #include<QList…

二叉树的层序遍历(两种方法:迭代+递归)

题目&#xff1a; 给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;[[3],[9,20],[15,7]] 解题思路&#xff1a;迭代法…

string类的模拟实现

文章目录 string类的模拟实现string基本框架的实现operator的实现string常用函数的实现 string类的模拟实现 前文对于string的常用函数做了讲解&#xff0c;由于string是一个面试官常考的点&#xff0c;总喜欢让模拟实现string类&#xff0c;下面来模拟实现一下string&#xf…

优化企业集成架构:iPaaS集成平台助力数字化转型

前言 在数字化时代全面来临之际&#xff0c;企业正面临着前所未有的挑战与机遇。技术的迅猛发展与数字化转型正在彻底颠覆各行各业的格局&#xff0c;不断推动着企业迈向新的前程。然而&#xff0c;这一数字化时代亦衍生出一系列复杂而深奥的难题&#xff1a;各异系统之间数据…

Vite创建Vue+TS项目引入文件路径报错

使用vite搭建vue3脚手架的时候&#xff0c;发现main.ts中引入App.vue编辑器会报错&#xff0c;但是不影响代码运行。 报错信息&#xff1a;TS2307: Cannot find module ‘./App.vue’ or its corresponding type declarations. 翻译过来是找不到模块或者相关的声明类型&#…

如何快速模拟一个后端 API

第一步&#xff1a;创建一个文件夹&#xff0c;用来存储你的数据 数据&#xff1a; {"todos": [{ "id": 1, "text": "学习html44", "done": false },{ "id": 2, "text": "学习css", "…

Redis7学习笔记01

一、redis7实战教程简洁 1、大纲&#xff1a; ①、适合对象&#xff0c;从小白到熟手&#xff0c;一套全包圆 ②、Redis专题-大厂面试题&#xff0c;含100道 ③、Redis专题-真实需求生产真实案例 ④、Redis7新特性 2、小白篇高阶篇&#xff1a; 3、大厂面试题&#xff1a…

自动化测试——APP测试

一、环境配置 1、安装jdk 配置环境变量 2、Android SDK 环境安装 3、Appium Server安装 4、模拟器安装 5、安装appium-python-client Python第三方库 二、APP自动化测试原理 三、Desired Capabilites——APPium自动化配置项 1、设置参数 2、操作系统 3、选择版本 4、设备名称…