1.“==”和“equal”的区别?
答:“==”对于基本数据类型,比较的是值是否相等;
对于引用数据类型,比较的是地址是否相等。
equals:比较的是对象是否相等(不能比较基本类型,因为equals是Object超类中的方法,而Object是所有类的父类)
举一个例子:
String str = new String("123");
String str2 = new String("123");
String str3 = "123";
String str4 = "123";
System.out.println(str3 == str4); //true 字符串常量池中已经有123,str3和str4地址相同
System.out.println(str == str2); //false new的两个对象,地址不同。
System.out.println(str == str3); //false str在堆区中,str3在字符串常量池中。
String str = new String("zsh");
String str2 = new String("zsh");
String str3 = "zsh";
String str4 = "zsh";
System.out.println(str3.equals(str4)); //true
System.out.println(str.equals(str2)); //true
System.out.println(str.equals(str3)); //true
//按照地址比较不该是这个结果,原因是String及包装类,所有的包装类都重写的equal方法,改地址比较为值比较。
补充:Java有八种基本数据类型分别是,byte,short,int,long,float,double,boolean,char。但是都不是面向对象的所以为了方便设计了对应的包装类。分别是Byte,Short,Integer,Long,Float,Double,Boolean,Character。
2.Java的三大特性
答:封装,继承,多态。
封装就是把类的属性私有化(private修饰),再通过公有方法(public)进行访问和修改。
继承,如果子类继承了父类,那么子类就可以复用父类的方法和属性,并且可以在此基础上新增方法和属性。Java是单继承。如果一个类没有父类,默认继承object类。
多态,在Java中,多态指的是,一个类可以有多种表现形态。
3.重写和重载的区别
答:重写是的英文是overwriting,继承设计中,子类覆盖父类的方法。
重载的英文是overloading。同一个类中,一个方法的多种表现形式(参数类型不同,参数个数不同)。
4.数据库的联接方式
答:MySQL有三种连接方式,分别是inner join(内连接),left join(左连接),right join(右连接)。
5.数据库模糊查询
答:使用like子句。有通配符“%”或者“_”时是模糊查询。没有时like相当于“=”。
“%我%”:查询包含“我”的所有数据。
“%我”:查询以“我”结尾的所有数据。
“我%”:查询以“我”开头 的所有数据。
"_"表示占一个字符。
6.简述SSM框架
答:SSM框架是spring、spring MVC 、和mybatis框架的整合,是标准的MVC模式。标准的SSM框架有四层,分别是dao层(mapper),service层,controller层和View层。使用spring实现业务对象管理,使用spring MVC负责请求的转发和视图管理,mybatis作为数据对象的持久化引擎。