java面试题总结

 背景:最近辞职了,准备重新找一份工作,整理了一份java面试习题

1.英文缩写

OOA - Object-Oriented Analysis(面向对象分析)

OOT - Object-Oriented Testing (面向对象测试)

OOP - Object-Oriented Programming (面象对象编程)

OOD - Object-Oriented Design(面向对象设计)

OOSM - Object-Oriented Software Maintenance (面向对象软件维护)

OOM - Object-Oriented Method(面向对象方法)

OOM(Out Of Memory)

2.Java支持的数据类型有哪些?什么是自动拆装箱?

基本数据类型: 
整数值型:byte,short,int,long, 
字符型:char 
浮点类型:float,double 
布尔型:boolean 
整数默认int型,小数默认是double型。Float和long类型的必须加后缀。

自动装箱和拆箱就是基本类型和引用类型之间的转换。

3.面向对象是什么?

面向对象是一种思想,世间万物都可以看做一个对象,这里只讨论面向对象编程(OOP),Java是一个支持并发、基于类和面向对象的计算机编程语言,面向对象软件开发的优点: 代码开发模块化,更易维护和修改; 代码复用性强; 增强代码的可靠性和灵活性; 增加代码的可读性。

  • 面向对象的四大基本特性:

抽象:提取现实世界中某事物的关键特性,为该事物构建模型的过程。对同一事物在不同的需求下,需要提取的特性可能不一样。得到的抽象模型中一般包含:属性(数据)和操作(行为)。这个抽象模型我们称之为类。对类进行实例化得到对象。

封装:封装可以使类具有独立性和隔离性;保证类的高内聚。只暴露给类外部或者子类必须的属性和操作。类封装的实现依赖类的修饰符(public、protected和private等)

继承:对现有类的一种复用机制。一个类如果继承现有的类,则这个类将拥有被继承类的所有非私有特性(属性和操作)。这里指的继承包含:类的继承和接口的实现。

多态:多态是在继承的基础上实现的。多态的三个要素:继承、重写和父类引用指向子类对象。父类引用指向不同的子类对象时,调用相同的方法,呈现出不同的行为;就是类多态特性。多态可以分成编译时多态和运行时多态。

抽象、封装、继承和多态是面向对象的基础。在面向对象四大基础特性之上,我们在做面向对象编程设计时还需要遵循有一些基本的设计原则。

4.什么是值传递和引用传递?

值传递是对基本型变量而言的,传递的是该变量的一个副本,改变副本不影响原变量. 
引用传递一般是对于对象型变量而言的,传递的是该对象地址的一个副本, 并不是原对象本身 。 
一般认为,java内的传递都是值传递. java中实例对象的传递是引用传递 。

 

posted @ 2018-09-04 20:15  丁晓超  阅读(205)  评论(0编辑  收藏  举报