第一题:abstract class 和interface有什么区别?
1.抽象类可以有构造方法,接口中不能有构造方法。
2.抽象类中可以有普通成员变量,接口中没哟普通成员变量。
3.抽象类可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的普通方法。
4.抽象类中的抽象方法的访问类型可以是public,protected和(默认类型,但应该是不行的),但接口中的抽象方法只能是public类型,并且默认为public abstract类型。
5.抽象类中可以包含静态方法,接口中不能包含静态方法。
6.抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变量的访问类型可以任意,但接口中定义的变量只能是public static final类型,并且默认即为public static final类型。
第二题:字符串操作:如何实现字符串的反转及替换?
可用字符串构造一StringBuffer对象,然后调用StringBuffer中的reverse方法即可实现字符串的反转,调用replace方法即可实现字符串的替换。
第三题:网络七层协议
OSI是一个开放性的通信系统互连参考模型,它是一个定义的非常好的协议规范。OSI的7层从上到下分别是7、应用层,6、表示层,5、会话层,4、传输层,3、网络层,2、数据链路层,1、物理层。其中高层(即7、6、5、4层)定义了应用 程序的功能,下面3 层(即3、2、1层)主要面向通过网络的端到端的数据流。
第四题:分层的优点
(1)人们可以很容易的讨论和学习协议的规范细节。
(2)层间的标准接口方便了工程模块化。
(3)创建了一个更好的互连环境。
(4)降低了复杂度,使程序更容易修改,产品开发的速度更快。
(5)每层利用紧邻的下层服务,更容易记住各层的功能。
第五题:HTTPS和HTTP的区别
https协议需要到ca申请证书,一般免费证书很少,需要交费。
http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。
http的连接很简单,是无状态的;https协议是由SSL+http协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
第六题:C/S架构,B/S架构
C/S=Client/Server;B/S=Brower/Server。一个是基于客户端/服务器,一个基于浏览器/服务器。
C/S架构的优点就是基于客户端和服务器模式,大部分运算都是在客户端上运行的,从而提高一定的运行效率,但是是在客户机上安装客户端,也导致软件的维护和升级时的不方便,需要程序员亲自进行配置;然后B/S架构的优点在于,软件的维护和升级方便,只要有网络就能升级,前提是你能登录到服务器。
第七题:什么是MVC?
MVC是Model,View,Controller的缩写,MVC是Application开发的设计模式,也就是大家所知道的Model2.在MVC的设计模式中,它包括三类对象:
(1)模型(Model)对象:是应用程序的主体部分。
(2)视图(View)对象:是应用程序中负责生成用户界面的部分。
(3)控制器(Controller)对象:是根据用户的输入,控制用户界面数据显示及更新Model对象状态的部分。
第八题:MVC有哪些优缺点?
优点:
1.视图控制模型分离,提高代码重用性。
2.提高开发效率。
3.便于后期维护,降低维护成本。
4.方便多开发人员间分工。
缺点:
1.清晰的构架以代码的复杂性为代价,对小项目可能反而降低开发效率。
2.运行效率相对降低。
3.目前没有比较好的rich客户端的解决方案。
4.控制层和表现层有时会过于紧密,导致没有真正分离和重用。
第九题:JDBC连接数据库步骤
1.加载JDBC驱动程序。
2.提供JDBC连接的URL、创建数据库的连接。
3.创建一个Statement
4.执行SQL语句
5.关闭JDBC对象。
第十题:主键和唯一索引的区别
在创建主键的同时会生成对应的唯一索引,主键在保证数据唯一性的同时不允许为空,而唯一可以有一个为空数据项,一个表中只能有一个主键,但是一个主键可以有多个字段,一个表中可以有多个唯一索引。