0
点赞
收藏
分享

微信扫一扫

java 基础面试笔记(一)

1、对final和static的理解

final修饰变量,变量不可修改;

final修饰类,类不可继承;

final修饰方法,方法不能重写;

static方法,不依赖任何对象可以访问;

static成员变量初始化顺序按照定义的顺序进行初始化:

· 父类静态变量

· 父类静态代码块

· 子类静态变量

· 子类静态代码块

· 父类普通变量

· 父类普通代码块

· 父类构造函数

· 子类普通变量

· 子类普通代码块

· 子类构造函数

static和final一块用表示全局变量 ;

2、get和post区别

1.get回退无害,post会再次提交请求;

2.get请求只能进行url编码,post有多种编码方式;

3.get请求参数会完整的保存在浏览器历史中,而post中的参数不可保留;

4.get请求在url中传递的参数有长度限制,而post没有;

5.post比get安全;

6.get产生一个tcp包,而post产生两个;

数据携带:

     1)GET方式:在URL地址后附带的参数是有限制的,其数据容量通常不能超过1K;

     2)POST方式:可以在请求的实体内容中向服务器发送数据,传送的数据量无限制。 

请求参数的位置:

    1)GET方式:请求参数放在URL地址后面,以 ? 的方式来进行拼接;

    2)POST方式:请求参数放在HTTP请求包中;

用途:

    1)GET方式一般用来获取数据;

     2) POST方式一般用来提交数据;

   原因:

      1)首先是因为GET方式携带的数据量比较小,无法带过去很大的数量;

      2 )POST方式提交的参数后台更加容易解析(使用POST方式提交的中文数据,后台也更加容易解决);

     3)GET方式比POST方式要快;

3、http和https区别

1.http的url以http开头,https以https开头;

2.http不安全,https安全;

3.http标准端口80,https标准端口443;

4.osi网络模型中,http工作于应用层,https工作于传输层;

5.http无法加密,https可以对传输进行加密;

6.http无需证书,https需要ca机构办法的证书;

4、防止表单重复提交

1.数据库建表时添加唯一约束;

2.用户提交后用js将提交按钮隐藏disable;

3.使用seesion;

4.在服务器端使用重定向处理;

5、转发和重定向区别

1.实际发生位置不同,地址栏不同;

2.转发在服务器进行跳转,重定向在浏览器;

3.用法不同:

          转发时,代表的是本应用程序的根目录;

          重定向,代表的是webapps目录;

4.能够去往的url范围不同

          转发,服务器只能去网当前web应用的资源;

          重定向是服务的跳转,可以去往任何资源;

5.传递数据类型不同

         转发的request可以传递各种类型的参数,包括对象;

         重定向只能传递字符串;

6、抽象类和接口的区别

      抽象类是捕捉子类通用特性的,它不能被实例化,能用作子类的超类。抽象类用来创建继承层级里子类的模板。接口是抽象类的集合,如果一个类实现某个接口,那么它就要继承接口的抽象方法。如果实现这个接口,要确保使用这些方法。接口只是一种形式,接口不做任何事。

1.一个子类只能继承一个抽象类,但能实现多个接口;

2.抽象类可以有构造方法,接口没有构造方法;

3.抽象类可以有普通成员变量,接口没有普通成员变量;

4.抽象类和接口都可有静态成员变量,抽象类中静态成员变量访问类型任意,接口只能public static final(默认);

5.抽象类可以没有抽象方法,抽象类可以有普通方法,接口中都是抽象方法;

6.抽象类可以有静态方法,接口不能有静态方法;

7.抽象类中的方法可以是public、protected;接口方法只有public abstract;

7、seesion和cookie

1.两者都是服务器用来进行会话跟踪的技术;

2.cookie通过加密后传输到客户端,不能超过4k;

3.seesion保存在服务器,过一段时间会消失,过多的seesion会造成服务器压力,seesion在分布式服务器上无法共享;

8、jdbc操作数据库的步骤

1.注册数据库驱动;

2.建立数据库连接;

3.创建statement;

4.执行sql语句;

5.处理结果集;

6.关闭数据库连接。

9、反射序列化

       序列化就是一种用来处理对象流的机制 把对象转换为字节序列;反序列化把字节序列转换为对象。

       反射:在运行状态中,对于任意一个类,都知道它的属性和方法;对于任意一个对象,都能调用它的属性和方法。

10、重载与重写

 1.重载是编译期间的活动,重写是运行期间的活动;

 2.重载是在一个类中定义相同的方法,方法的参数列表或类型要互不相同;

 3.重写要求子类重写时与父类具有相同的参数类型和返回值;

 jvm 重载:通过静态类型调用相应的方法;重写:jvm先判断对象的动态类型,根据动态类型选择。

举报

相关推荐

0 条评论