资源描述
技术面试题
【前端】
1.简述一下你对HTML语义化理解?
用对的标签做对的事情。
html语义化让页面内容构造化,构造更清晰,便于对浏览器、搜索引擎解析;
虽然在没有样式CSS状况下也以一种文档格式显示,并且是容易阅读;
搜索引擎爬虫也依赖于HTML标记来拟定上下文和各个核心字权重,利于SEO;
使阅读源代码人对网站更容易将网站分块,便于阅读维护理解。
2..js有哪些内置对象?
数据封装类对象:Object、Array、Boolean、Number 和 String
其她对象:Function、Arguments、Math、Date、RegExp、Error
3.你如何对网站文献和资源进行优化?期待解决方案涉及:
文献合并
文献最小化/文献压缩
使用CDN托管
缓存使用
4.http状态码
200(OK),表达祈求成功,祈求所但愿响应头或数据体将随此响应返回。
301(Moved-Permanently),永久性重定向
302(Moved-Temporarily),暂时性重定向
403(Forbidden),服务器已经理解祈求,但是回绝执行它。
404(Not-Found),祈求资源没有被找到
500(Interval Server Error),服务器内部错误
5.你能描述一下当你制作一种网页工作流程吗?
1)依照需求,拟定主题。透彻进一步所做网站核心功能和核心。
2)收集资料。从对比相似类型网站(惯用而熟悉样式,顾客更乐意接受),参照别人可行实现办法。
3)规划网站。抽离出类似模块和可重用部件。如果是响应式网站就需要设定断点,依照不同宽度屏幕设定样式。
4)设计数据库。
5)搭建基本框架。引入重置样式表reset.css和字体样式表font.css,风格统一图标尚有后台需要用到包。
6)编码和调试。注意统一命名和编码规范。当多人开发时,还需要制定规范文档。
7)上传测试。运用FTP工具,把网站发布到自己申请主页存储服务器上。网站上传后来,你要在浏览器中打开自己网站,逐页逐个链接进行测试,发现问题,及时修改,然后再上传测试。
8)推广宣传 。不断宣传,提高网站访问率和知名度。推广办法有诸多,例如到搜索引擎上注册、与别网站互换链接、加入广告链等。
【java】
1.简述一下你理解设计模式。
答:所谓设计模式,就是一套被重复使用代码设计经验总结(情境中一种问题通过证明一种解决方案)。使用设计模式是为了可重用代码、让代码更容易被她人理解、保证代码可靠性。设计模式使人们可以更加简朴以便复用成功设计和体系构造。将已证明技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。
面试被问到关于设计模式知识时,可以拣最惯用作答,例如:
- 工厂模式:工厂类可以依照条件生成不同子类实例,这些子类有一种公共抽象父类并且实现了相似办法,但是这些办法针对不同数据进行了不同操作(多态办法)。当得到子类实例后,开发人员可以调用基类中办法而不必考虑究竟返回是哪一种子类实例。
- 代理模式:给一种对象提供一种代理对象,并由代理对象控制原对象引用。实际开发中,按照使用目不同,代理可以分为:远程代理、虚拟代理、保护代理、Cache代理、防火墙代理、同步化代理、智能引用代理。
- 适配器模式:把一种类接口变换成客户端所期待另一种接口,从而使原本因接口不匹配而无法在一起使用类可以一起工作。
- 模板办法模式:提供一种抽象类,将某些逻辑以详细办法或构造器形式实现,然后声明某些抽象办法来迫使子类实现剩余逻辑。不同子类可以以不同方式实现这些抽象办法(多态实现),从而实现不同业务逻辑。
除此之外,还可以讲讲上面提到门面模式、桥梁模式、单例模式、装潢模式(Collections工具类和I/O系统中都使用装潢模式)等,反正基本原则就是拣自己最熟悉、用得最多作答,以免言多必失。
2、用Java写一种单例类。
答:
- 饿汉式单例
public class Singleton {
private Singleton(){}
private static Singleton instance = new Singleton();
public static Singleton getInstance(){
return instance;
}
}
· 懒汉式单例
public class Singleton {
private static Singleton instance = null;
private Singleton() {}
public static synchronized Singleton getInstance(){
if (instance == null) instance = new Singleton();
return instance;
}
}
23、抽象类(abstract class)和接口(interface)有什么异同?
答:抽象类和接口都不可以实例化,但可以定义抽象类和接口类型引用。一种类如果继承了某个抽象类或者实现了某个接口都需要对其中抽象办法所有进行实现,否则该类依然需要被声明为抽象类。接口比抽象类更加抽象,由于抽象类中可以定义构造器,可以有抽象办法和详细办法,而接口中不能定义构造器并且其中办法所有都是抽象办法。抽象类中成员可以是private、默认、protected、public,而接口中成员全都是public。抽象类中可以定义成员变量,而接口中定义成员变量事实上都是常量。有抽象办法类必要被声明为抽象类,而抽象类未必要有抽象办法。
24、静态嵌套类(Static Nested Class)和内部类(Inner Class)不同?
答:Static Nested Class是被声明为静态(static)内部类,它可以不依赖于外部类实例被实例化。而普通内部类需要在外部类实例化后才干实例化
1.面向对象软件开发长处:
代码开发模块化,更易维护和修改;代码复用;增强代码可靠性和灵活性;增长代码可理解性。
2.使用封装某些好处:
通过隐藏对象属性来保护对象内部状态。
提高了代码可用性和可维护性,由于对象行为可以被单独变化或者是扩展。
禁止对象之间不良交互提高模块化。
3.抽象和封装不同点
抽象和封装是互补概念。一方面,抽象关注对象行为。另一方面,封装关注对象行为细节。普通是通过隐藏对象内部状态信息做到封装,因而,封装可以当作是用来提供抽象一种方略。
4.什么是值传递和引用传递?
对象被值传递,意味着传递了对象一种副本。因而,就算是变化了对象副本,也不会影响源对象值。
对象被引用传递,意味着传递并不是实际对象,而是对象引用。因而,外部对引用对象所做变化会反映到所有对象上。
5.进程和线程区别是什么?
进程是执行着应用程序,而线程是进程内部一种执行序列。一种进程可以有各种线程。线程又叫做轻量级进程。
6.Java中垃圾回收有什么目?
垃圾回收目是辨认并且丢弃应用不再使用对象来释放和重用资源。
7.用最有效率办法计算2乘以8?
2 << 3(左移3位相称于乘以23次方,右移3位相称于除以23次方)。
8.构造器(constructor)与否可被重写(override)?
构造器不能被继承,因而不能被重写,但可以被重载。
9.与否可以继承String类?
String 类是final类,不可以被继承。
10.List、Set、Map与否继承自Collection接口?
List、Set 是,Map 不是。Map是键值对映射容器,与List和Set有明显区别,而Set存储零散元素且不容许有重复元素(数学中集合也是如此),List是线性构造容器,合用于按数值索引访问元素情形。
【MySql】
1.数据库优化思路(大方面)
1)SQL语句优化
2)2.索引优化
3)数据库构造优化
4)服务器硬件优化
2.如何懂得表内行数?
select count(*) from 表名;
3.游标与否只能用于存储过程?
是
4.什么支持触发器,社么不支持触发器?
只有表支持触发器,视图不支持触发器
5.什么是数据库事务,事务有哪些特性?
数据库事务是指逻辑上一组sql语句,构成这组操作各个sql语句,执行时要么成功要么失败
数据库事务:具备原子性、隔离性、持久性、一致性
【维护】
1.Internet网络拓扑构造是一种什么构造?
网型。
2.文献系统中,文献按名字存取是为了什么?
以便顾客使用
3.能使系统中多台计算机互相协作完毕一件任务操作系统是什么?
分布式操作系统
4.常用路由选取合同,以及它们区别
常用路由选取合同有:RIP合同、OSPF合同。
RIP合同:底层是贝尔曼福特算法,它选取路由度量原则(metric)是跳数,最大跳数是15跳,如果不不大于15跳,它就会丢弃数据包。
OSPF合同:底层是迪杰斯特拉算法,是链路状态路由选取合同,它选取路由度量原则是带宽,延迟。
5..子网掩码作用
子网掩码只有一种作用,就是将某个IP地址划提成网络地址和主机地址两某些。
用于子网掩码位数决定于也许子网数目和每个子网主机数目。
6.HTTP中,POST与GET区别
GET - 从指定资源祈求数据。
POST - 向指定资源提交要被解决数据
【其她】
1.简述同步和异步区别
同步是阻塞模式,异步是非阻塞模式。
同步就是指一种进程在执行某个祈求时候,若该祈求需要一段时间才干返回信息,那么这个进程将会始终等待下去,直到收到返回信息才继续执行下去;
异步是指进程不需要始终等下去,而是继续执行下面操作,不论其她进程状态。当有消息返回时系统会告知进程进行解决,这样可以提高执行效率。
2.浏览器内核分别是什么?
IE:trident内核
Firefox:gecko内核
Safari:webkit内核
Opera:此前是presto内核,Opera现已改用Google ChromeBlink内核
Chrome:Blink(基于webkit,Google与Opera Software共同开发)
3.TCP和UDP区别?
TCP提供面向连接、可靠数据流传播,而UDP提供是非面向连接、不可靠数据流传播。TCP传播单位称为TCP报文段,UDP传播单位称为顾客数据报。TCP注重数据安全性,UDP数据传播快,由于不需要连接等待,少了许多操作,但是其安全性却普通。
4.网络按使用者分类为:
公共网和专用网。
展开阅读全文