2020-10-09

1.String的常用的方法有哪些?

1.String类长度:String没有length的属性,有length()这个方法,可以获取字符串的长度

2.indexOf()/lastIndexOf():可以获取指定字符串的索引位置。indexof()返回的是首次搜索字符出现的索引;lastindexof()返回的是搜索字符最后出现的索引。ps:索引是从0开始计算。

3.charAt()方法:可以获取指定索引处的字符,返回的字符的索引

2. ==和equals的区别?

1、功能不同

"=="是判断两个变量或实例是不是指向同一个内存空间。

"equals"是判断两个变量或实例所指向的内存空间的值是不是相同。

2、定义不同

"equals"在JAVA中是一个方法。

"=="在JAVA中只是一个运算符号。

3. 你们平常都怎么实现比较是否为空

null  ==0  isEmpty(字符串,数组,集合)

4. 集合有什么特点?譬如:先介绍集合都有什么?然后再去介绍这个每个的特点.

1、List列表:有序的,可重复的;

2、Queue队列:有序,可重复的;

3、Set集合:不可重复;

4、Map映射:无序,键唯一,值不唯一。

5. 多线程有几种实现方式?

主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。

6. Array和ArrayList有什么区别?

1. Array类型的变量在声明的同时必须进行实例化(至少得初始化数组的大小),而ArrayList可以只是先声明。

2. Array只能存储同构的对象,而ArrayList可以存储异构的对象。

3初始化大小

Array对象的初始化必须只定指定大小,且创建后的数组大小是固定的,而ArrayList的大小可以动态指定,其大小可以在初始化时指定,也可以不指定,也就是说该对象的空间可以任意增加。

4 Array不能够随意添加和删除其中的项,而ArrayList可以在任意位置插入和删除项。

8. IO流的分类

按流向分(站在程序角度考虑

输入流(input)

输出流(output)

按类型分:

字节流(InputStream/OutputStream)

任何文件都可以通过字节流进行传输。

字符流(Reader/Writer)

非纯文本文件,不能用字符流,会导致文件格式破坏,不能正常执行。

节点流(低级流:直接跟输入输出源对接)

FileInputStream/FileOutputStream/FileReader/FileWriter/PrintStream/PrintWriter.

处理流(高级流:建立在低级流的基础上)

转换流:InputStreamReader/OutputStreamWriter,字节流转字符流/字符流转字节流

缓冲流:BufferedInputStream/BufferedOutputStream  BufferedReader/BufferedReader可对节点流经行包装,使读写更快

9. 你工作中用到的设计模式

spring中常用设计模式盘点

工厂模式: BeanFactory, ApplicationContext中的对象创建;

观察者模式: 各种事件的发布和通知

模板模式: JdbcTemplate

AOP: 综合了代理,装饰器,适配器模式

10. J2EE是技术还是平台还是框架

J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。

J2EE 也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。

11. jsp的9个内置对象

request response out pageContext session application config page

12. 当一个线程进入一个对象的一个synchronized方法后,其它线程不能进入此对象的其它方法

不能,一个对象的一个synchronized方法只能由一个线程访问。对象的synchronized方法不能进入了,但它的其他非synchronized方法还是可以访问的。

13. 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?

不对

(1)如果两个对象相同(equals 方法返回 true),那么它们的hashCode 值一定要相同;

(2)如果两个对象的 hashCode 相同,它们并不一定相同。

14. 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete

class)?

概念:

接口: 接口是一种约束形式,其中只包括成员定义,不包含成员实现的内容。

抽象类: 抽象类往往用来表征对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象。

抽象方法: 抽象方法指一些只有方法声明,而没有具体方法体的方法。抽象方法一般存在于抽象或接口中。

接口可以继承(extends)接口。

publicinterfaceInterfaceA{}interfaceInterfaceBextendsInterfaceA{}

抽象类可以实现(implements)接口。

publicinterfaceInterfaceA{}abstractclassTestAimplementsInterfaceA{}

抽象类可继承(extends)实体类,(但前提是实体类必须有明确的构造函数)。

publicclassTestA{}abstractclassTestBextendsTestA{}



你可能感兴趣的:(2020-10-09)