java面试题目

xiaoxiao2025-10-20  8

1. &和&&的区别

&&短路与,先判断 && 前面的条件,如果前面的条件成立,就不会判断后面的条件了,为了提高效率。在java编程中,大多数情况下都会有 && ;在某些特殊情况下会用到 &,如:

if (false & a++){ System.out.println("判断过程中也需要更新a的值"); }

短路或(||)的用法相同

2.自增与自减的使用

自增: 前自增:先自增后赋值 后自增:先赋值后自增

int a = 1; int b = a++; //b=1 ; a=2 int c = ++a; //c=3 ; a=3 int d = a+++b; //d=4 ; a=4; b=1 int e = a++ + ++b; //e=6 ;a=5;b=2

自减效果相同

3.定义一个double类型的变量,其值为20

数据类型转换的小技巧,隐式转换法

double a = 20.0;

定义一个float类型的变量

float a = 20.0f;

4.下面代码的结果是什么

short a = 1; a=a+2; System.out.println(a);

会报错:

短数据类型转换成长的数据类型 可以直接转换 长的数据类型转换成短的数据类型 要强制转换 可以写成: a+=b; a=(short)(a+b);

5.==的使用

对于基本数据类型 比较的是数值 对于引用数据类型 比较的是地址 字符串比较用.equals() 返回的都是Boolean值

String a = "a"; String b = new String("a"); if (a.equals(b)){ System.out.println("我比较的是数值,不是地址"); } if (a==b){ System.out.println("我比较的是数值,不是地址"); }else{ System.out.println("我比较的是地址"); }

6.用三目运算符,找出三个数中最大的

写法不唯一

int a,b,c; a = 6; b = 2; c = 3; System.out.println(a>b?(a>c?a:c):(b>c?b:c));

7.用最快的速度计算3*8

System.out.println(3<<3);

8.不用第三个变量来交换两个数

至少写出三个方法 链接:不通过第三个变量来交换两个数:https://blog.csdn.net/IT_arookie/article/details/83178610

9.说说 java中goto

goto不是Java中的关键字,goto是java中的保留字,现在没有在java中使用。

10. 下面的结果是什么

char a = 66; char b = 122; System.out.println(a); //B System.out.println(b); //z

11.java的三大特征是什么

封装、继承和多态

12.overloading与overriding的区别

链接:java中方法的重写(overriding)与重载(overloading)的区别

13.什么是封装

封装(Encapsulation)是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节,对数据的访问只能通过已定义的接口,适当的封装可以让程式码更容易理解和维护,也加强了程式码的安全性。

14.什么是继承

继承是面向对象最显著的一个特性。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力,这种技术使得复用以前的代码非常容易,能够大大缩短开发周期,降低开发费用。

15什么是多态

多态具体表现在重写和重载,多态就是类的多种表现方式,比如同名不同参。 同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法。简单来书就是父类的引用指向子类的对性,说白了就是大的接收小的。

16.说一说final关键字

1.声明一个常量;2.声明一个方法;3.声明一个类,不能被继承,名字使用全大写;4修饰参数,不能使参数改变。 使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。

17下面的代码有什么不妥之处

if(a.equals(“a”){}

a可能为NULL,会报空指针错误;改为"a".equals(a)

18.访问权限修饰符

作用域public,private,protected,以及不写时的区别。

作用域 当前类 同一package 子类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × ×

19.排序都有哪几种方法?

排序的方法有:插入排序(直接插入排序、希尔排序),交换排序(冒泡排序、快速排序),选择排序(直接选择排序、堆排序),归并排序,分配排序(箱排序、基数排序)。

20.说一下你遇到过的异常

未完待续…

转载请注明原文地址: https://www.6miu.com/read-5038255.html

最新回复(0)