java面试中的题解

java面试中的题解

1.面向对象的特征有哪些方面
- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象。
- 继承:从已有类得到信息创建新类的过程,继承让软件系统具有了良好的延展性。
- 封装: 把数据和操作数据的方法绑定在一起,对数据的访问只能通过固有的接口定义。隐藏一切可以隐藏的东西,对外提供的只是最简单的接口。
- 多态:是同样的对象引用调用同样的方法但是做了不同的事情,分为编译时多态和运行时多态。

2.多态的好处?
- 可替换性(substitutability)。多态对已存在代码具有可替换性。
- 可扩充性增加子类而不影响已经存在模块的运行和操作。
- 灵活性使得代码更加灵活多样,提高代码使用效率
- 简化性多态简化应用软件的代码编写和修改过程。

3.int和Integer有什么区别?
答:Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换。
Java 为每个原始类型提供了包装类型:

4.&和&&的区别
-&有两种用法(1)按位与;(2)逻辑与。
-&&短路与运算,也就是说运算符&&左边的表达式如果是false,右边的表达式就不会进行运算
|逻辑或与||短路或的区别也是如此。

5.解释内存中的栈(stack)、堆(heap)的用法。
- 栈空间:一个基本数据类型的变量,对象的引用,函数调用的现场保护都储存在栈空间。
- :通过new关键字和构造器创建的对象放在对空间;

6、接口是否可继承(extends)接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete class)?
答:接口可以继承接口,而且支持多重继承。抽象类可以实现(implements)接口,抽象类可继承具体类也可以继承抽象类。
7
7.python与java的区别?
Python比Java语言更具灵活性,而且代码简单,清晰明了,方便开发者理解,从这个层次去看,Python的优势是入门快、开发效率快,而Java语言则是强调整体性,统一性,注重模式开发,通过大量的类、接口的调用,实现功能以及业务,。
Java是为了大型项目而生的,多种框架的实现让Java能够轻而易举的实现模块功能的开发,而Python则是专注与小项目,小功能模块,简单的脚本语言,简单的功能实现,都可以通过Python语言来实现,各自分工,再相互结合,才是各种开发语言合理存在,合理利用的必然原因

8.自动装箱与拆箱
装箱:将基本类型用它们对应的引用类型包装起来;
拆箱:将包装类型转换为基本数据类型;
Java使用自动装箱和拆箱机制,节省了常用数值的内存开销和创建对象的开销,提高了效率,由编译器来完成,编译器会在编译期根据语法决定是否进行装箱和拆箱动作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值