1、1 byte a=3;
2 byte b=4;
3 byte c=a+b;
4 byte d=3+4;
以上哪一行有编译问题?应该如何解决?为什么会发生这样的问题?
第三行出现了错误,应将byte换为int,因为a和b 是byte的,但是在计算
时会自动转换为int,主要是为了防止计算引起的溢出。
2、1 byte a=130;
以上有没有编译问题?应该如何解决?
byte a=(byte)130;
因为130超过了byte的取值范围,所以要使用强制类型转换的方式赋值
3、请你以最快的速度将变量a由2变成8
int a = 2; a = a<<2;//a<<=2
4、int a = 5;int b = 7;请你将两个数交换
a.设置一个临时变量
int temp = a; a = b; b = temp;
b.利用 + -
a = a + b; b = a - b; a = a - b;
c.利用位运算
a = a ^ b; b = a ^ b; a = a ^ b;
d.利用一句话
b = a + b - (a = b);
5、输入一个数,判断是不是质数(素数)
只能被1和它本身整出,不能被其他整除,但是1不是质数
2 ,3,5 ,7,11,13,17,19,23,
分析:从2开始到这个数的前一个数,不能被这期间的任何一个数整出,成为质数
System.out.println("请输入要判断的数(大于1):");
Scanner sc = new Scanner(System.in);
int q = sc.nextInt();
boolean f = true;
for(int i=2;i<q;i++){
if(q%i==0){
f = false;
break;
}
}
if(f == true){
System.out.println(q+"是素数");
}else{
System.out.println(q+"不是素数");
}
****************************************************2016-08-19*********************************************
排序:冒泡,选择,快速
查找:二分查找(折半查找):数组已排好序
****************************************************2016-08-19~23*********************************************
1、面向对象的特征是什么?
封装 继承 多态
继承是面向对象实现软件复用的重要手段,当子类继承父类后,子类作为一种特殊的父类,将直接获得父类的属性和方法;
封装指的是将对象的实现细节隐藏起来,然后通过一些公用方法暴露该对象的功能;
多态指的是子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,这意味着同一个类型的对象在运行时可能表现出不同的行为特征。
如何理解这几个特征
封装:因为每个类都有自己属性,为了不让外部的类随意改变自己属性的值,就将其属性私有化,但是这造成了不能初始化的问题,
就在类里面写构造方法,而属性可以通过调用get和set方法来使用其属性。
2、有哪些修饰符?每个修饰符的作用是什么?
private : 私有化 只有类的内部可以访问
protect :受保护的 类的内部、同包和外包的子类可以访问
default :默认 类的内部、同包可以调用,外包必须要调用本包才可以访问到
public : 公有化 均可以访问
static :静态
a、
3、static关键字有什么特点?如何使用
4、子类可以继承父类的所有属性吗
可以,但是不一定访问到。
、方法的重载和方法的重写的异同:
各自介绍一下就可以了,不用写之间的关系,他们之间也没什么关系
面试题
最新推荐文章于 2022-07-28 19:49:55 发布