运算符&和&&有什么区别?
- &与&&都可以用作逻辑与的运算符,当两边的结果都为true时,运算结果才为true,否则只要有一方运算结果是false,运算结果就为false。
- &&在开发过程中用到的概率比&大,因为&&具有短路的功能,只要遇到一个表达式是false,就不会再进行判断。
- &同时也是位运算符,就是我们通常所说的按位与运算,当&的左右两边都是Boolean型表达式或Boolean值时,就进行按位与运算。
比较运算符==与equals有什么区别?
在java里面,除了基本数据类型外,其它所有参数都为引用类型,所以在进行==比较时比较的将是其引用变量地址。equals属于object方法,不同对象对equals方法的实现是不一样的,在使用时需要根据实际情况重写。在object中equals方法与==等同。
进程和线程的区别?
进程是系统进行资源分配可调度的单位。
线程是CPU调度和分派的基本单位。
一个进程可以拥有多个线程。
JAVA类构造函数可以继承吗?可以是final修饰吗?
不可以继承,不可用fianl修饰。可以用super关键字调用父类构造函数,但必须写在子类构造函数的第一句。
JAVA 8种基本类型
数据类型 | 包装类 | 字节长度 | 默认值 |
byte | Byte | 1 | 0 |
short | Short | 2 | 0 |
int | Integer | 4 | 0 |
long | Long | 8 | 0 或 0L |
float | Float | 4 | 0.0F 或 0.0f |
double | Double | 8 | 0.0 |
boolean | Boolean | 1 | false |
char | Character | 2 | u0000 |
接口和抽象类的区别
- 抽象类可以有抽象方法,也可以有实例方法。接口中所有的方法都是公开抽象方法。jdk1.8后接口可以有方法体,要加default关键字。
- 具体类使用抽象类使用extends关键字继承,具体类使用接口抽象类使用implements关键字实现。具体类实现接口必须重写接口中的所有方法。
- 抽象类可以有自己的构造方法,接口不能有构造方法。
- 一个具体类只能extends一个抽象类,可以implements多个接口。
java集合类有那些,写出使用Iterator遍历的方法。
Array和ArrayList区别
Comparable与Comparator的区别
Comparable和Comparator都是用来实现集合中元素的比较、排序的。
Comparable是在集合内部定义的方法实现的排序,位于java.lang下。内比较器。
Comparator是在集合外部实现的排序,位于java.util下。外比较器。
wait()和sleep()区别
- sleep来自Thread类,和wait来自Object类。
- 锁: 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。
- 使用范围:wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用。
JAVA常用设计模式
pom.xml节点名称
Tomcat是什么?哪些内容需要在web.xml中配置
Web容器,Servlet容器(区别于apache)。