随笔分类 - 面试题
程序、进程、线程
摘要:程序:用某种语言编写指令的集合(代码)。(程序是静态的) 程序 进程:是程序的一次执行过程,(程序是动态的) 运行程序 线程:是进程的执行路径 同时执行程序的多个功能
集合
摘要:JAVA中的集合Java中的集合分为两大类: Collection(value):包含list和Set,其中list是有序,可重复的;set是无序,不可重复的。 Map(key-value)包含HashMap、HashTable、CurrentHashNap 8、ArrayList、Vector、L
JAVA面向对象的特征?
摘要:封装、继承、多态、抽象 封装:通过类来体现,将实体封装成类,其中包含属性和方法 继承:类与类之间可以继承特点,使得代码重用 多态:通过传递给父类对象引用不同的子类从而表现出不同的行为 抽象: 将一类实体的共同特性抽象出来,封装在一个抽象类中。
String、StringBuilder、StringBuffer之间的区别?
摘要:(1)运行速度:StringBuilder > StringBuffer > String String是字符串常量,其他两者属于字符串变量, String对象创建后不可以改变,对String的操作实际上是不断创建和回收的过程,执行速度慢。 (2)线程安全:StringBuilder是线程不安全的,
介绍一下 Spring 的事务管理
摘要:Spring提供了两种事务管理方式,编程式事务和声明式事务。 编程式事务指的是通过编码方式实现事务;声明事务基于 Aop,将具体业务逻辑与事务处理解耦。 声明式事务管理使业务代码逻辑不受污染,因此在实际使用中声明式事务用的比较多。
4.Java 集合框架的基本接口有哪些?
摘要:Collection:单列集合的根接口 List:元素有序 可重复 ArrayList:类似一个长度可变的数组 。适合查询,不适合增删 LinkedList:底层是双向循环链表。适合增删,不适合查询。 Set:元素无序,不可重复 HashSet:根据对象的哈希值确定元素在集合中的位置 TreeSet
3.什么是值传递和引用传递?
摘要:一、 传递参数类型 在方法调用的过程中,如果传递参数是基本数据类型,则是值传递。 在方法调用的过程中,如果传递参数是复杂数据类型,则是引用传递。 二、 传递过去的类型 值传递,传递过去的是值本身,形参直接赋值该值(拷贝的),在方法内对形参进行改变时不影响实参。 引用传递,传递过去的是复杂类型在堆内的
接口和抽象类的区别
摘要:1.抽象类可以提供成员方法的实现细节,而接口中只能存在public abstract 方法 2.抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是public static final类型的; 3.接口中不能含有静态代码块以及静态方法(只有抽象类),而抽象类可以有静态代码块和静态方法 4.
String和Stringbuffer的区别
摘要:相同点: String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数组。这个String类提供了数值不可改变的字符串。 不同点: 而这个StringBuffer类提供的字符串进行修改。 String实现了equals方法,new String(“abc”).equals