java中常见面试题
来源 :中华考试网 2020-10-30
中一:BigInteger
(1)针对大整数的运算:可以让超过Integer范围内的数据进行运算。
(2)构造方法
A:BigInteger(String s)
(3)成员方法(自己补齐)
BigInteger b1=new BigInteger("100");
BigInteger b1=new BigInteger("50");
A:加:b1.add(b2);//150
B:减:b1.subtract(b2);//50
C:乘:b1.multiply(b2);//500(这个面试题考过)
D:除:b1.divide(b2);//2
填写下面表单即可预约申请免费试听java课程!害怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
预约申请免费听java课程
- 地区:
- 北京
- 天津
- 上海
- 江苏
- 浙江
- 山东
- 江西
- 安徽
- 广东
- 广西
- 海南
- 辽宁
- 吉林
- 黑龙江
- 内蒙古
- 山西
- 福建
- 河南
- 河北
- 湖南
- 湖北
- 四川
- 重庆
- 云南
- 贵州
- 新疆
- 西藏
- 陕西
- 青海
- 宁夏
- 甘肃
- 姓名:
- 手机:
二:面试题:
(1)静态代码块,构造代码块,构造方法的顺序问题?
静态代码块>构造代码块>构造方法其中静态代码块(只执行一次)
(2)当Son s=new Son();时父类和子类中各种代码执行顺序。(先进行父类初始化,然后进行子类初始化)
父类静态代码块1
子类静态代码块2
父类构造代码块3
父类无参构造方法4
子类构造代码块5
子类无参构造方法6
十一:面试题
==和equals()的区别?
A:==
基本类型:比较的是值是否相同
引用类型:比较的是地址值是否相同
B:equals()
equals:Object中默认比较引用类型的地址值,而String类重写了equals()方法,比较的是内容是否相等。
三:静态变量和成员变量的区别
A:所属不同
静态变量:属于类,类变量
成员变量:属于对象,对象变量,实例变量
B:内存位置不同
静态变量:方法区的静态区
成员变量:堆内存
C:生命周期不同
静态变量:静态变量是随着类的加载而加载,随着类的消失而消失
成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失
D:调用不同
静态变量:可以通过对象名调用,也可以通过类名调用
成员变量:只能通过对象名调用
四:final修饰 局部变量
a:基本类型 值不能发生改变 ,是常量。如:final int x=10;
b:引用类型 地址值不能发生改变,但是对象的内容是可以改变的.
final Student s=new Student();
s.age=100;
如教室编号,302教室一旦被final确定,就没法改变,但是教室里的学生(值)是可以改变的。
五:两个面试题:
A:Override和Overload的区别?Overload是否可以改变返回值类型?方法重写和方法重载的区别。
方法重写:子类中出现了和父类中一模一样的方法声明。又称方法覆盖,方法复写
方法重载:本类中出现了方法名一样,参数列表不同的方法,与返回值无关。
B:this和super的区别和各自的作用?
this:代表当前类的对象引用,
super:代表父类存储空间的标识,(可以理解为父类的引用,通过这个东西可以访问父类的成员)
六:继承的好处:
A:提高了代码的复用性
B:提高了代码的维护性
C:让类与类产生了一个关系,是多态的前提
继承的弊端:
A:让类的耦合性增强。这样某个类的改变,就会影响其他和该类相关的类。
开发的原则:低耦合,高内聚。
耦合:类与类的关系
内聚:自己完成某件事情的能力
B:打破了封装性