java常见笔试题目

2023-11-03

1.下列那一行代码编译后不会出现警告或错误。

1) char c="a"; 2) byte b=257; 3) boolean b=null; 4) int i=10; 5)float f=1.3;

2.下面这段代码编译时会发生什么情况。

public class MyClass {

public static void main(String arguments[]) {

amethod(arguments);

}

public void amethod(String[] arguments) {

System.out.println(arguments);

System.out.println(arguments[1]);

}

}

1) error Can't make static reference to void amethod.

2) error method main not correct

3) error array must include parameter

4) amethod must be declared with String

3.byte 的取值范围是:

1)-128 到127; 2)-255 到 256 ;3)-65535 到 65536 ;4)根据不同的java虚拟机而定;

4.下面的命令的输出结果是什么。

java myprog good morning

public class myprog{

public static void main(String argv[])

{

System.out.println(argv[2])

}

}

1) myprog

2) good

3) morning

4) Exception raised: "java.lang.ArrayIndexOutOfBoundsException: 2"

5.下面哪些变量不是合法变量。

1) 2variable 2) variable2 3) _whatavariable 4) _3_ 5) $anothervar 6) #myvar

6.当下面这段程序编译并运行时会出现什么结果。

public class MyClass{

static int i;

public static void main(String argv[]){

System.out.println(i);

}

}

1) Error Variable i may not have been initialized 2) null 3) 1 4) 0

7. String s1=new String("Hello")

String s2=new String("there");

String s3=new String();

下面哪条是正确的。

1) s3=s1 + s2; 2) s3=s1-s2; 3) s3=s1 & s2; 4) s3=s1 && s2;

8. 下面这段代码编译和运行时会发生什么情况。

abstract class MineBase {

abstract void amethod();

static int i;

}

public class Mine extends MineBase{

public static void main(String argv[]){

int[] ar=new int[5];

for(i=0;i < ar.length;i++)

System.out.println(ar[i]);

}

}

1) 将0到5打印出来 2) Error: ar is used before it is initialized

3) Error Mine must be declared abstract 4) IndexOutOfBoundes Error

9. Which two can be used to create a new Thread? (Choose Two)

1) Extend java.lang.Thread and override the run method.

2) Extend java.lang.Runnable and override the start method.

3) Implement java.lang.Thread and implement the run method.

4) Implement java.lang.Runnable and implement the run method.

5) Implement java.lang.Thread and implement the start method

10.写出下面代码的运行结果。

public class Pass{

static int j=20;

public static void main(String argv[]){

int i=10;

Pass p = new Pass();

p.amethod(i);

System.out.println(i);    

System.out.println(j);

}

public void amethod(int x){

x=x*2;

j=j*2;

}

}

x=10;y=40

11.class SuperClass{ public float aaa(){return 3.14f;} }

public class Test extends SuperClass {

public float aaa(){ return 5.14f; }

public double aaa(double double1) {return double1;}

public void aaa(){} //error

public float aaa(float float1){return float1;}

}

//重载绝对不能方法名相同,而类型不同。

12. public int bbb(){

static int i=0; // error

i++;

return i;

}

静态变量不能在方法中定义,切记切记

13.public static void main(String arg[]){

short b=57, a=47;

double c=(short)b/a*2.0;

int d =(short)b/a*2;

}

注意其中的区别。

14. public class Test {

public static void main(String[] args) {

String s ;

Test test = new Test();

test.f(s); //error

}

public void f(String s){

s="1223";

System.out.println(s);

}

}

error: The local variable s may not have been initialized
1.成员变量的初始化
实例变量可以在定义处或者在构造方法中被显式初始化。如果在这两处都没有初始化,那么保留自动初始化时的默认值。final型的变量必须被显式初始化。
静态变量可以在定义处或者在静态代码块中被显式初始化。如果在这两处都没有初始化,那么保留自动初始化的默认值。final型的静态变量必须在定义处或者在静态代码块中被显式初始化。
2. 局部变量的初始化
局部变量必须在使用之前做显式初始化。如果编译器能够确认一个局部变量在使用之前可能没有被初始化,编译器将报错。
如果局部变量没有被初始化,并且在方法中一直没有被使用,编译和运行都会通过。

可以改正为:String s = null ;

15.public class Test {

public static void main(String[] args) {

int i = 0;

Test test = new Test();

test.f();

}

public void f(){

i++; //error

System.out.println(i); //error

}

}

error : The local variable i is never read

16. abstract class AAA{ int i=0;}

class SuperClass extends AAA{ i=3; } //error

public class Test extends SuperClass {

public static void main(String[] args) {

Test test = new Test();

test.f();

}

public void f(){

i++;

System.out.println(i);

}

}

error : Syntax error on token "i", VariableDeclaratorId expected after this token

类体内是声明变量和函数的地方,你突然冒出一个 i=3; 自然是不行的.可以在方法中运用。

17. public class Test {

public static void main(String[] args) {

Test test = new Test();

if(test.f(2)){ //error

System.out.println("111");

}else{

System.out.println("222");

}

}

public int f(int i){return i++; }

}

error: Type mismatch: cannot convert from int to boolean
在JAVA中,if()用的是一个布尔表达式,而不是数字值,这一点与C/C++不同。布尔类型和数字类型不能相互转换。
在switch(expr1)语句中,expr1必须与int类型是赋值兼容的;byte,short或类型可被自动升级;不允许使用float或long表达式。
在case(expr2)语句中,expr2必须是与int类型赋值兼容的常量表达式。当变量或表达式的值不能与任何case值相匹配时,将执行default后的程序代码。如果没有break语句作为某一个case代码段的结束句,则程序继续执行下一个case的代码块,而不检查下一个case表达式的值。

18 public class Test {

byte[] arry1,arry2[];

byte[][] arry3;

byte arry4[][];

public void f(){

arry1=arry2; //error

arry2=arry3;

arry2=arry4;

}

}

error : Type mismatch: cannot convert from byte[][] to byte[]

19. abstract class AAA{ int i=0; }

public class Test extends AAA {

public static void main(String arg[]){

int[] ar=new int[5];

for(i=0;i < ar.length;i++) //error

System.out.println(ar[i]);

}

}

error: Cannot make a static reference to the non-static field i

改正为abstract class AAA{ static int i=0; }即可

20.public int bbb(){

int i; //error

i++;

return i;

}

error: The local variable i may not have been initialized

当变量被定义于函数之内,java会运用编译期间错误消息来告诉你没有被初始化。

成员变量的初始化:

21.class CtorBase {

CtorBase(int k) { System.out.println("Base Created");}

}

public class Complex extends CtorBase {

Complex(int k) { System.out.println("Complex Created");}   //error

public static void main(String args[]) {

Complex a = new Complex(10);

}

}

error: Implicit super constructor CtorBase() is undefined. Must explicitly invoke another constructor

Rule1:编译器总是确保类至少有一个构造函数;如果类没有构造函数,编译器会为它构造一个无参的构造函数。Rule2:如果类已经有了一个构造函数,不管它是有参函数还是无参函数,编译器都不会再为它构造一个构造函数。

  在这过程中,编译器会去调用其父类的无参构造函数,如果其父类没有默认(无参)的构造函数,则构造过程出错,编译不能通过。



22.class CtorBase {

int i;

CtorBase(int k) { this.i = k; }

}

public class Complex extends CtorBase {

Complex(int k) {

super(k);

}

public static void main(String args[]) {

Complex a = new Complex(10);

System.out.println("a.i="+a.i);

}

}

结果:a.i=10



23.class CtorBase {

int i;

CtorBase(int k) { this.i = k; }

CtorBase() { }

}

public class Complex extends CtorBase {

Complex(int k) { }

public static void main(String args[]) {

Complex a = new Complex(10);

System.out.println("a.i="+a.i);

}

}

结果:a.i=0

24。

public class Test{
static int cnt=0;
static int sum=0;
int number;
public static void main (String args []){
A a = new A();
B b = new B();
Test test1 = new Test(11);
Test test2 = new Test(22);
test2 = new Test(33);
System.out.println("cnt="+cnt);
System.out.println("sum="+sum);
a.show();
b.show();
}
Test(int n){
number=n;
cnt++;
sum+=number;
}
}

class A {
int a=2;
void show(){
System.out.println("a1="+ a);

}
}
class B extends A{
int a=3;
void show(){
System.out.println("a2="+ super.a);
super.show();
System.out.println("a3="+ a);
}
}

结果:

cnt=3
sum=66
a1=2
a2=2
a1=2
a3=3

25.

class ValHold{
public int i = 10;
}

public class Demo{

public void amethod(){
ValHold v = new ValHold();
another(v);
System.out.println(v.i);
}

public void another(ValHold v){
v.i = 20;
ValHold vh = new ValHold();
v =vh;
System.out.println(v.i);
}

public static void main(String[] argv){
Demo o = new Demo();
o.amethod();
}
}

结果:

10
20

当一个引用变量作为参数传递给一个方法时, 在这个方法内可以改变变量的值,即改变引用指向的对象,(本题中将vh赋给v)但是方法的调用结束后,改变量恢复原来的值,即变量仍然指向原来的对象. (即another(v)调用结束之后,v又回复到第一次ValHold v = new ValHold();时指向的地址空间.) 但是如果在方法内改变了引用指向的对象的数据(属性),那么当方法的调用结束后,尽管引用仍然指向原来的对象,这个对象的某个属性已经被改变了(v的i值在执行v.i=20的时候就已经被改变了,所以调用another结束后,v.i已经变成了20)

26.
public class Test {
public static void main(String [] args){
Base b = new Subclass();
System.out.println(b.x);
System.out.println(b.method());
}
}
class Base{
int x = 2;
int method(){
return x;
}
}
class Subclass extends Base{
int x = 3;
int method(){
return x;
}
}
结果:2 3
声明变量b后,你能访问的对象部分只是Base的部分; Subclass的特殊部分是隐藏的.这是因为编译器应意识到,e 是一个Base,而不是一个Subclass.但重写的方法除外。abstract和final相互排斥,前者专用于继承,后者禁止继承;抽象类中的抽象方法不能为static静态方法不能被override,只是被隐藏(hidden)了。
27。
public class Test{
public static String setFileType(String fname){
int p=fname.indexOf('.');
if(p>0) fname=fname.substring(0,p);
fname+=".TXT";
return fname;
}
public static void main(String args[]){
String theFile="Program.java";
String s = setFileType(theFile);
System.out.println("Created "+theFile);
System.out.println("Created "+s);
}
}
String在java成安全的String, 对于String的任一个操作都是先重新生成一个String的拷贝, 然后对这个拷贝进行操作。 所以String在参数传递的时候可以看作是值传递。 即如果你需要修改一个String并返回修改后的String, 你得要再去接一下返回值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java常见笔试题目 的相关文章

  • Maven 2:如何将当前项目版本打包在WAR文件中?

    我正在使用 Maven 2 构建我的 Java 项目 并且正在寻找一种向用户呈现 pom xml 当前版本号的方法 例如使用 Servlet 或 JSP 据我所知 最好的方法是 Maven 将版本号作为文本文件打包到 WAR 中 这使我能够
  • 使用 HttpUrlConnection Android 将 base64 编码的图像发送到服务器

    我正在尝试使用 HttpUrlConnection 将 base64 编码的图像发送到服务器 我遇到的问题是大多数图像均已成功发送 但有些图像会生成 FileNotFound 异常 我的图像编码代码可以在下面找到 public static
  • Jackson - 反序列化嵌套 JSON

    我有一个 JSON 字符串 其格式如下 response execution status ready report cache hit true created on 2013 07 29 08 42 42 fact cache erro
  • 使用 Java 在 WebDriver 中按 Ctrl+F5 刷新浏览器

    我已经使用 java 刷新了 WebDriver 中的浏览器 代码如下 driver navigate refresh 如何使用 Java 在 WebDriver 中按 Ctrl F5 来做到这一点 我认为您可以使用 WebDriver 和
  • 在哪里可以获得有关 Java FitNesse 和 Slim 的一些教程? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在远程 WebSphere 上进行 JNDI 查找期间解决 sun/io/MalformedInputException

    我使用 WebSphere 8 5 来托管我的应用程序 并在应用程序服务器上配置了一些 JDBC 资源 我还使用瘦客户端运行时库开发了一个客户端应用程序 当按以下方式执行 JNDI 查找时 env put Context INITIAL C
  • 使用 ChannelExec 的命令未执行 - Jsch

    我正在使用 Jsch 在服务器中创建一个文件并执行一些命令 对于文件创建 它工作正常 但是对于命令执行 则不然 它保持状态 1 仍在处理它 并永远保持该状态 这种情况发生在 shell 执行或我尝试成为 root 时 请按照以下方法操作 p
  • 字符串池可以包含两个具有相同值的字符串吗? [复制]

    这个问题在这里已经有答案了 字符串池可以包含两个具有相同值的字符串吗 String str abc String str1 new String abc Will the second statement with new operator
  • Java Microsoft Excel API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • JTable 和 JScrollpane 大小的问题

    我有一个JScrollPane with a JTable在里面 在里面JTable我最初有 3 行 稍后添加行 默认JTable我的 3 行很难看 因为JScrollPane calls getPreferredScrollableVie
  • Java-如何将黑白图像加载到二进制中?

    我在 FSE 模式下使用 Java 和 swing 我想将完全黑白图像加载为二进制格式 最好是二维数组 并将其用于基于掩码的每像素碰撞检测 我什至不知道从哪里开始 过去一个小时我一直在研究 但没有找到任何相关的东西 只需将其读入Buffer
  • F# 命名约定

    F 是否有 官方 命名 大小写约定 我总是怀疑是否使用 C 风格 Class MyFunctionName or Module my function name 在 F 中 您应该混合 BCL 类和 F 库类 它们具有不同的大小写 并且代码
  • 如何将 Observable>> 转换为 Observable>

    我陷入了如何将以下可观察类型转换 转换为我的目标类型的困境 我有以下类型的可观察值 Observable
  • 带有 OpenId 提供程序的 Java Spring 安全性

    我有一个 spring MVC 应用程序 另一个客户端应用程序想要使用 open id connect 访问我的 spring 应用程序 如何在服务器端实现开放ID提供商 请帮忙 MITREid 连接 OpenID Connect Java
  • 如何初始化静态地图?

    你会如何初始化静态Map在Java中 方法一 静态初始化方法二 实例初始化 匿名子类 或者 还有其他方法吗 各自的优点和缺点是什么 这是说明这两种方法的示例 import java util HashMap import java util
  • 警告:无法更改每个人的权限:

    当运行 Java 快速入门示例时https developers google com drive web quickstart java hl hu https developers google com drive web quicks
  • 如何解决 PDFBox 没有 unicode 映射错误?

    我有一个现有的 PDF 文件 我想使用 python 脚本将其转换为 Excel 文件 目前正在使用PDFBox 但是存在多个类似以下错误 org apache pdfbox pdmodel font PDType0Font toUnico
  • 如何用表达式语言获取布尔属性?

    如果我有一堂这样的课 class Person private int age public int getAge return age public boolean isAdult return age gt 19 我可以得到age像这样
  • 如何在不同版本的Google App Engine中使用自定义域名?

    我使用谷歌应用程序引擎作为我的 Android 和 Web 应用程序的服务器 我使用 Android Studio 开发了 Android 应用程序 并使用 Eclipse 开发了 Web 应用程序 我在应用程序引擎中部署了两个版本 第一个
  • 如何捕获 try-with-resource 语句中 close 方法抛出的异常

    我正在读关于try with resourceJava 中的语句可用于指定任意数量的资源 try Resource1 res1 initialize code Resource1 res2 initialize code statement

随机推荐

  • stable diffusion实践操作-Controlnet

    本文专门开一节写提示词相关的内容 在看之前 可以同步关注 stable diffusion实践操作 文章目录 前言 1 ControlNet是什么 2 常用的模型 3 基本操作 openpose full 1 提示词 2 参数 控制效果参数
  • Thinkpad E580 硬件错误0187、2200、2201解决经历

    我的电脑是Thinkpad E580 最近电脑坏了 以下是具体情况 一天中午 我打开电脑 在屏幕显示完联想的logn之后 它出现了 我从未见过的我的电脑出现这样的情况 它也给我带来了生活上的不便以及精神和金钱上的损失 当然这是后话了 它长这
  • 人工智能(pytorch)搭建模型11-pytorch搭建DCGAN模型,一种生成对抗网络GAN的变体实际应用

    大家好 我是微学AI 今天给大家介绍一下人工智能 pytorch 搭建模型11 pytorch搭建DCGAN模型 一种生成对抗网络GAN的变体实际应用 本文将具体介绍DCGAN模型的原理 并使用PyTorch搭建一个简单的DCGAN模型 我
  • csharp: 用Enterprise Library对象实体绑定数据

    Enterprise Library https msdn microsoft com en us library ff648951 aspx
  • 盒马五年,参悟取舍

    配图来自Canva可画 从盒马举旗首垦算起 新零售已走过五个年头 在众多资本和玩家的集体探索下 整个赛道越来越繁荣 但格局和气象也在不断变化 这两年的变动尤为明显 疫情的打击 少数资本的强势以及头部梯队的强化 为赛道带来了更大的波动 一边是
  • Pandas 使用指南

    Pandas 可以说是在 Python 数据科学领域应用最为广泛的工具之一 Pandas 是 Python 的核心数据分析支持库 提供了快速 灵活 明确的数据结构 旨在简单 直观地处理关系型 标记型数据 Pandas 的目标是成为 Pyth
  • PCB表面处理方式详解

    上一篇文章中介绍了关于PCB设计中的常用基本概念 那么本篇文章就挑选其中的第三点 表面处理 给大家展开说一说 顺便也自我温习一下 什么是表面处理 由于铜长期与空气接触会使得铜氧化 所以我们需要在PCB表面做一些处理 这样才可以保证PCB板的
  • JQuery Dialog(JS模态窗口,可拖拽的DIV)

    代码分析地址 http jingyan baidu com album fb48e8be5347156e622e14ac html 或者http jingyan baidu com article fb48e8be5347156e622e1
  • 升级log4j2遇到的那些坑

    升级log4j2遇到的那些坑
  • 数据分析与挖掘之一:流程

    概念 数据分析 Data Analysis 是以数据为分析对象 以探索数据内的有用信息为主要途径 以解决业务需求为最终目标 包含业务理 解 数据采集 数据清洗 数据探索 数据可视化 数据建模 模型结果可视化 分析结果的业务应用等步骤在内的一
  • vue中读取对象中对象的属性无法读取报错

    问题描述 报错内容 Vue warn Error in render TypeError Cannot read properties of undefined reading cnName 在写博客系统的时候 在文章详情页 需要获取文章中
  • 杂谈随感-6:敢问路在何方?

    不识庐山真面目 只缘生在此山中 人员远虑 必有近忧 敢问路在何方 4G还是5G 是 钻地道 还是 云中飘 3G 已死 没有出路 4G 行将入木 死路一条 5G Hub不死不活 僵尸 RRU与BBU 一个钻地道 一个云中飘 渐行渐远 各走各路
  • 常用Dos命令

    1 dos命令 color all 修改背景字体颜色 cls 清屏 dir 查看当前目录有哪些文件 a 查看隐藏文件 a d 只查看目录不显示文档 r 只读文件 A 准备存档的文件 在内存中写了但是没网硬盘里面写 S 系统文件 c 显示文内
  • Caffe 工程的一些编译错误以及解决方案

    CAFFE深度学习交流群 532629018 整理一下最近遇到caffe工程的一些编译错误以及解决方法 1 cuDNN cuDNN当前最新版本是v5 近两三年的一些caffe工程 使用的版本不尽相同 其中以v2 v3版本的最为常见 所以使用
  • UCenter安装时提示mysql_connect()不支持

    问题描述 安装时 提示mysql connect 不支持 请检查 mysql 模块是否正确加载 如下图 分析原因 查看php官方帮助文档得知 mysql connect是php4有php5中的函数 在php5 5 0已标记为废弃 在php7
  • python-numpy一些方法总结

    1 multiply 例子 x1 1 2 3 x2 4 5 6 print multiply x1 x2 输出 4 10 18 multiply函数得到的结果是对应位置上面的元素进行相乘 2 std 标准方差 var 方差 例子 b 1 3
  • C++继承时派生类与基类有同名函数时如何分别引用

    一 普通函数同名 当某个函数func 在基类和派生类中都有定义时 派生类中的函数func 将修改从基类继承来的函数func 如果非要从派生类中访问基类的函数func 有两种方法 定义基类指针 让基类指针指向派生类对象 则调用的是基类func
  • ns2报错

    若报以下错误 finish couldn t execute nam no such file or directory 最简单的解决方法是在命令行中到你的ns安装目录下 进入nam目录 输入 sudo make install
  • k8s部署SpringBoot项目

    一 前言 本文将介绍如何通过CICD将SpringBoot框架的Web项目发布到k8s集群中 文章中有使用到eureka的注册 如果对如何在k8s集群中部署eureka 那么可以参考本人的 k8s部署eureka集群 文章 如果只是为了测试
  • java常见笔试题目

    1 下列那一行代码编译后不会出现警告或错误 1 char c a 2 byte b 257 3 boolean b null 4 int i 10 5 float f 1 3 2 下面这段代码编译时会发生什么情况 public class