1.重写与重载的区别,重载的方法可以改变返回值类型吗
重写(Override)需要遵循“两同两小一大原则”:
两同:方法签名(方法名、形参列表)相同
两小:子类的返回值类型和抛出的异常类要比父类的返回值类型和抛出的异常类更小或者相等。这里说的返回值类型小值指的是子类和父类的关系。
一大:子类的访问权限要比父类的访问权限要大或者相等
重写:发生在父类和子类之间,方法签名必须是一样的
重载:发生在本类中,方法名一样,但是参数列表不一样,重载可以是构造器的重载,也可以是方法的重载。
方法的重载是可以改变返回值类型的
2.有一张表table :
张三 数学 75 语文 76 英语 77
李四 数学53 语文75 英语 47
如何写SQL语句,使其变成如下?
姓名 语文 数学 英语
张三 76 75 77
李四 75 53 47
String:适用于少量的字符串操作的情况
StringBuffer:适用多线程下在字符缓冲区进行大量操作的情况
String为字符串常量,String对象一旦创建之后该对象是不可更改的,而StringBuffer为字符串变量,StringBuffer的对象是变量,是可以更改的。
4.基本数据类型?还有与它们的包装类之间有什么区别
基本数据类型和包装类的对应表
byte-Byte、short-Short、int-Integer、long-Long、float-Float、double-Double、char-Character、boolean-Boolean
不可以直接把基本数据类型赋值给引用数据类型。所以在JDK1.5之前,构建一个包装类需要通过构造器来构造包装类对象,但是这显得代码过于麻烦,所以从1.5之后就提供了自动装箱和自动拆箱的功能。
自动装箱:就是可以把一个基本类型变量直接赋值给对应的包装类变量,或者赋值给Object变量;
自动拆箱:与自动装箱相反,允许直接把包装类对象直接赋值给一个对应的基本类型变量。
5.说说ssm框架?谈一谈对mybatis的理解
SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层
使用spring MVC负责请求的转发和视图管理,spring实现业务对象管理,mybatis作为数据对象的持久化引擎
首先Mybatis是一个对象关系映射(Object Relational Mapping,简称ORM)框架,是为了解决面向对象与关系数据库存在的互不匹配的现象。也就是说Mybatis的关注点在于对象与数据库之间的映射,Mybatis会把从数据库中得到的松散数据进行封装,使开发者直接拿到一个对象。Mybatis其实是对jdbc的操作数据库的过程进行了封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理jdbc繁杂的过程代码。
6.var a = new Array(5);与var a = new Array([5]);区别
var arr=new Array(5) 是调用数组构造函数生成的数组,可以直接设置数组的长度,
var a = new Array([5]) 是定义的一个数组长度为1的a数组,数组中的第一个元素为【5】.
7.101-200之间有多少个素数,打印出这些素数。(编程题)
package test;
public class Tl3 {
public static void main(String[] args) {
int count = 0;
for (int i = 101; i <= 200; i++) {
int j;
for (j = 2; j < i; j++) {
// 如果j能被i整出在跳出循环
if (i % j == 0) {
break;
}
}
// 判断循环是否提前跳出,如果j<i说明在2~j之间,i有可整除的数
if (j >= i) {
count++;
System.out.print(i + "\t");
// 换行,用count计数,每五个数换行
if (count % 5 == 0) {
System.out.print("\n");
}
}
}
}
}
8.抽象类与接口的区别
相同点:
都不能被实例化,位于继承树的顶端,是用于被其他类继承或者实现的;
都可以包含抽象方法,子类都必须要实现抽象方法;
在实际的开发中,都是接口先行,一般都是先定义接口,然后开发人员实现接口,完成具体方法的实现。
抽象类是个半成品,可以作为一个模板去使用。
不同点:
抽象类中可以定义普通方法,但是接口中都是抽象方法和静态变量;
在抽象类是可以定义静态方法的,接口中不能定义静态方法的;
在抽象中可以定义构造器的,但是在接口中是不存在构造器这个概念的;
一个类最多只能有一个直接的父类或者抽象类,但是可以有多个接口的实现。
9.private的作用范围
private:只能在当前类中被访问,一般用于对成员变量的修饰;
10.说说你对于Java中容器的理解
在Java当中,如果有一个类专门用来存放其它类的对象,这个类就叫做容器,或者就叫做集合,集合就是将若干性质相同或相近的类对象组合在一起而形成的一个整体。
11.什么是spring?谈谈你对spring的理解?
Spring 是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目得是简化企业开发。
重写(Override)需要遵循“两同两小一大原则”:
两同:方法签名(方法名、形参列表)相同
两小:子类的返回值类型和抛出的异常类要比父类的返回值类型和抛出的异常类更小或者相等。这里说的返回值类型小值指的是子类和父类的关系。
一大:子类的访问权限要比父类的访问权限要大或者相等
重写:发生在父类和子类之间,方法签名必须是一样的
重载:发生在本类中,方法名一样,但是参数列表不一样,重载可以是构造器的重载,也可以是方法的重载。
方法的重载是可以改变返回值类型的
2.有一张表table :
张三 数学 75 语文 76 英语 77
李四 数学53 语文75 英语 47
如何写SQL语句,使其变成如下?
姓名 语文 数学 英语
张三 76 75 77
李四 75 53 47
String:适用于少量的字符串操作的情况
StringBuffer:适用多线程下在字符缓冲区进行大量操作的情况
String为字符串常量,String对象一旦创建之后该对象是不可更改的,而StringBuffer为字符串变量,StringBuffer的对象是变量,是可以更改的。
4.基本数据类型?还有与它们的包装类之间有什么区别
基本数据类型和包装类的对应表
byte-Byte、short-Short、int-Integer、long-Long、float-Float、double-Double、char-Character、boolean-Boolean
不可以直接把基本数据类型赋值给引用数据类型。所以在JDK1.5之前,构建一个包装类需要通过构造器来构造包装类对象,但是这显得代码过于麻烦,所以从1.5之后就提供了自动装箱和自动拆箱的功能。
自动装箱:就是可以把一个基本类型变量直接赋值给对应的包装类变量,或者赋值给Object变量;
自动拆箱:与自动装箱相反,允许直接把包装类对象直接赋值给一个对应的基本类型变量。
5.说说ssm框架?谈一谈对mybatis的理解
SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层
使用spring MVC负责请求的转发和视图管理,spring实现业务对象管理,mybatis作为数据对象的持久化引擎
首先Mybatis是一个对象关系映射(Object Relational Mapping,简称ORM)框架,是为了解决面向对象与关系数据库存在的互不匹配的现象。也就是说Mybatis的关注点在于对象与数据库之间的映射,Mybatis会把从数据库中得到的松散数据进行封装,使开发者直接拿到一个对象。Mybatis其实是对jdbc的操作数据库的过程进行了封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理jdbc繁杂的过程代码。
6.var a = new Array(5);与var a = new Array([5]);区别
var arr=new Array(5) 是调用数组构造函数生成的数组,可以直接设置数组的长度,
var a = new Array([5]) 是定义的一个数组长度为1的a数组,数组中的第一个元素为【5】.
7.101-200之间有多少个素数,打印出这些素数。(编程题)
package test;
public class Tl3 {
public static void main(String[] args) {
int count = 0;
for (int i = 101; i <= 200; i++) {
int j;
for (j = 2; j < i; j++) {
// 如果j能被i整出在跳出循环
if (i % j == 0) {
break;
}
}
// 判断循环是否提前跳出,如果j<i说明在2~j之间,i有可整除的数
if (j >= i) {
count++;
System.out.print(i + "\t");
// 换行,用count计数,每五个数换行
if (count % 5 == 0) {
System.out.print("\n");
}
}
}
}
}
8.抽象类与接口的区别
相同点:
都不能被实例化,位于继承树的顶端,是用于被其他类继承或者实现的;
都可以包含抽象方法,子类都必须要实现抽象方法;
在实际的开发中,都是接口先行,一般都是先定义接口,然后开发人员实现接口,完成具体方法的实现。
抽象类是个半成品,可以作为一个模板去使用。
不同点:
抽象类中可以定义普通方法,但是接口中都是抽象方法和静态变量;
在抽象类是可以定义静态方法的,接口中不能定义静态方法的;
在抽象中可以定义构造器的,但是在接口中是不存在构造器这个概念的;
一个类最多只能有一个直接的父类或者抽象类,但是可以有多个接口的实现。
9.private的作用范围
private:只能在当前类中被访问,一般用于对成员变量的修饰;
10.说说你对于Java中容器的理解
在Java当中,如果有一个类专门用来存放其它类的对象,这个类就叫做容器,或者就叫做集合,集合就是将若干性质相同或相近的类对象组合在一起而形成的一个整体。
11.什么是spring?谈谈你对spring的理解?
Spring 是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目得是简化企业开发。
Spring 框架除了管理对象及其依赖关系,还提供像通用日志记录、性能统计、安全控制、异常处理等面向切面的能力,还能管理数据库事务,本身提供了一套简单的 JDBC访问实现,提供与第三方数据访问框架集成(如 mybatis、Hibernate 等),与各种 Java EE技术整合(如 Java Mail、任务调度等等),提供一套自己的 web 层框架 Spring MVC、而且还能非常简单的与第三方 web 框架集成。从这里我们可以认为 Spring 是一个超级粘合平台,除了自己提供功能外,还提供粘合其他技术和框架的能力,从而使我们可以更自由的选择到底使用什么技术进行开发。