龙空技术网

Java面试逻辑题分享

华清远见成都中心 54

前言:

而今大家对“java中异或”都比较关切,看官们都想要学习一些“java中异或”的相关内容。那么小编在网络上汇集了一些对于“java中异或””的相关内容,希望大家能喜欢,兄弟们快快来了解一下吧!

1、什么是反射 API?它是如何实现的?

答:

反射是指在运行时能查看一个类的状态及特征,并能进行动态管理的功能。

这些功能是通过一些内建类的反射 API 提供的,比如 Class,Method,Field,Constructors 等。

使用的例子:使用Java反射API的getName方法可以获取到类名。

2、什么是数据的封装?

答:

数据封装的一种方式是在类中创建 set 和 get 方法来访问对象的数据变量。

一般来说变量是 private 的,而 get 和 set 方法是 public 的。

封装还可以用来在存储数据时进行数据验证,或者对数据进行计算,或者用作自省(比如在 struts 中使用 javabean )。

把数据和功能封装到一个独立的结构中称为数据封装。

封装其实就是把数据和关联的操作方法封装到一个独立的单元中,这样使用关联的这些方法才能对数据进行访问操作。

封装提供的是数据安全性,它其实就是一种隐藏数据的方式。

3、如何原地交换两个变量的值?

答:

先把两个值相加赋值给第一个变量,然后用得到的结果减去第二个变量,赋值给第二个变量。再用第一个变量减去第二个变量,同时赋值给第一个变量。

代码如下:

int a=5,b=10;a=a+b; b=a-b; a=a-b;

使用异或操作也可以交换。第一个方法还可能会引起溢出。

异或的方法如下: int a=5,b=10;a=a+b; b=a-b; a=a-b;

int a = 5; int b = 10;

a = a ^ b;

b = a ^ b;

a = a ^ b;

标签: #java中异或