![简单的软件开发面试问题_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-11/11/99c46ffc-a09d-4706-9077-af53d76c0878/99c46ffc-a09d-4706-9077-af53d76c08781.gif)
![简单的软件开发面试问题_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-11/11/99c46ffc-a09d-4706-9077-af53d76c0878/99c46ffc-a09d-4706-9077-af53d76c08782.gif)
![简单的软件开发面试问题_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-11/11/99c46ffc-a09d-4706-9077-af53d76c0878/99c46ffc-a09d-4706-9077-af53d76c08783.gif)
![简单的软件开发面试问题_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-11/11/99c46ffc-a09d-4706-9077-af53d76c0878/99c46ffc-a09d-4706-9077-af53d76c08784.gif)
![简单的软件开发面试问题_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-11/11/99c46ffc-a09d-4706-9077-af53d76c0878/99c46ffc-a09d-4706-9077-af53d76c08785.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、技术面试题【前端】1.简述一下你对HTML 语义化的理解?用正确的标签做正确的事情。html 语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析;即使在没有样式CSS情况下也以一种文档格式显示,并且是容易阅读的;搜索引擎的爬虫也依赖于HTML 标记来确定上下文和各个关键字的权重,利于SEO;使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。2.js 有哪些内置对象?数据封装类对象:Object 、 Array、 Boolean、 Number和 String其他对象: Function、 Arguments 、 Math 、 Date、 RegExp、 Error3.你如
2、何对网站的文件和资源进行优化?期待的解决方案包括:文件合并文件最小化 / 文件压缩使用 CDN托管缓存的使用4.http 状态码200(OK),表示请求成功,请求所希望的响应头或数据体将随此响应返回。301(Moved -Permanently ),永久性重定向302(Moved -Temporarily ),暂时性重定向403(Forbidden ),服务器已经理解请求,但是拒绝执行它。404(Not -Found),请求的资源没有被找到500(Interval Server Error ),服务器内部错误5.你能描述一下当你制作一个网页的工作流程吗?1)根据需求,确定主题。透彻深入所做网站
3、的核心功能和关键。2)收集资料。从对比相同类型的网站(惯用而熟悉的样式,用户更乐意接受),参照别人可行的实现方法。3)规划网站。抽离出类似的模块和可重用的部件。如果是响应式网站就需要设定断点,根据不同宽度屏幕设定样式。4)设计数据库。5)搭建基本的框架。引入重置样式表reset.css 和字体样式表font.css,风格统一的图标还有后台需要用到的包。6)编码和调试。注意统一命名和编码规范。当多人开发时,还需要制定规范文档。7)上传测试。利用FTP工具,把网站发布到自己申请的主页存放服务器上。网站上传以后,你要在浏览器中打开自己的网站,逐页逐个链接的进行测试,发现问题,及时修改,然后再上传测试
4、。8)推广宣传 。不断宣传,提高网站的访问率和知名度。推广的方法有很多,例如到搜索引擎上注册、与别的网站交换链接、加入广告链等。【 java 】1. 简述一下你了解的设计模式。答:所谓设计模式, 就是一套被反复使用的代码设计经验的总结(情境中一个问题经过证实的一个解决方案)。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 设计模式使人们可以更加简单方便的复用成功的设计和体系结构。将已证实的技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。面试被问到关于设计模式的知识时,可以拣最常用的作答,例如:- 工厂模式: 工厂类可以根据条件生成不同的子类实例,这些子类有一
5、个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作(多态方法)。 当得到子类的实例后, 开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例。- 代理模式: 给一个对象提供一个代理对象, 并由代理对象控制原对象的引用。 实际开发中,按照使用目的的不同,代理可以分为:远程代理、虚拟代理、保护代理、Cache 代理、防火墙代理、同步化代理、智能引用代理。- 适配器模式: 把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起使用的类能够一起工作。- 模板方法模式: 提供一个抽象类, 将部分逻辑以具体方法或构造器的形式实现, 然后
6、声明一些抽象方法来迫使子类实现剩余的逻辑。 不同的子类可以以不同的方式实现这些抽象方法(多态实现),从而实现不同的业务逻辑。除此之外, 还可以讲讲上面提到的门面模式、 桥梁模式、 单例模式、 装潢模式 ( Collections 工具类和 I/O 系统中都使用装潢模式) 等,反正基本原则就是拣自己最熟悉的、 用得最多的作答,以免言多必失。2、用 Java 写一个单例类。答:- 饿汉式单例public class Singleton private Singleton()private static Singleton instance = new Singleton();public stat
7、ic 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)有什么异同?答:抽象类和接口都不能够实
8、例化,但可以定义抽象类和接口类型的引用。一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类。 接口比抽象类更加抽象,因为抽象类中可以定义构造器,可以有抽象方法和具体方法,而接口中不能定义构造器而且其中的方法全部都是抽象方法。抽象类中的成员可以是private、默认、 protected、public的,而接口中的成员全都是public的。抽象类中可以定义成员变量,而接口中定义的成员变量实际上都是常量。有抽象方法的类必须被声明为抽象类,而抽象类未必要有抽象方法。24、静态嵌套类(Static Nested Class)和内部类( Inn
9、er Class)的不同?答: Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化1.面向对象软件开发的优点:代码开发模块化,更易维护和修改;代码复用;增强代码的可靠性和灵活性;增加代码的可理解性。2.使用封装的一些好处:通过隐藏对象的属性来保护对象内部的状态。提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展。禁止对象之间的不良交互提高模块化。3.抽象和封装的不同点抽象和封装是互补的概念。一方面,抽象关注对象的行为。另一方面,封装关注对象行为的细节。 一般是通过隐藏对
10、象内部状态信息做到封装, 因此, 封装可以看成是用来提供抽象的一种策略。4.什么是值传递和引用传递?对象被值传递, 意味着传递了对象的一个副本。因此,就算是改变了对象副本,也不会影响源对象的值。对象被引用传递,意味着传递的并不是实际的对象,而是对象的引用。因此, 外部对引用对象所做的改变会反映到所有的对象上。5.进程和线程的区别是什么?进程是执行着的应用程序,而线程是进程内部的一个执行序列。一个进程可以有多个线程。线程又叫做轻量级进程。6.Java中垃圾回收有什么目的?垃圾回收的目的是识别并且丢弃应用不再使用的对象来释放和重用资源。7.用最有效率的方法计算2 乘以 8?2 << 3
11、(左移 3 位相当于乘以2 的 3 次方,右移3 位相当于除以2 的 3 次方)。8.构造器( constructor )是否可被重写(override )?构造器不能被继承,因此不能被重写,但可以被重载。9.是否可以继承String 类?String 类是 final 类,不可以被继承。10.List、 Set、 Map是否继承自Collection接口?List、 Set是, Map不是。Map是键值对映射容器,与List 和Set有明显的区别,而Set 存储的零散的元素且不允许有重复元素(数学中的集合也是如此),List 是线性结构的容器,适用于按数值索引访问元素的情形。【 MySql
12、】1.数据库优化的思路(大方面)1)SQL语句优化2)2.索引优化3)数据库结构优化4)服务器硬件优化2.如何知道表内行数?select count(*) from表名 ;3.游标是否只能用于存储过程?是4.什么支持触发器,社么不支持触发器?只有表支持触发器,视图不支持触发器5.什么是数据库的事务,事务有哪些特性?数据库事务是指逻辑上的一组sql 语句,组成这组操作的各个sql 语句,执行时要么成功要么失败数据库事务:具有原子性、隔离性、持久性、一致性【维护】1.Internet 的网络拓扑结构是一种什么结构?网型。2.文件系统中,文件按名字存取是为了什么?方便用户的使用3.能使系统中多台计算
13、机相互协作完成一件任务的操作系统是什么?分布式操作系统4.常见的路由选择协议,以及它们的区别常见的路由选择协议有:RIP协议、 OSPF协议。RIP协议:底层是贝尔曼福特算法,它选择路由的度量标准(metric) 是跳数,最大跳数是15跳,如果大于15 跳,它就会丢弃数据包。OSPF 协议:底层是迪杰斯特拉算法,是链路状态路由选择协议,它选择路由的度量标准是带宽,延迟。5.子网掩码的作用子网掩码只有一个作用,就是将某个IP 地址划分成网络地址和主机地址两部分。用于子网掩码的位数决定于可能的子网数目和每个子网的主机数目。6.HTTP中, POST与 GET的区别GET - 从指定的资源请求数据。
14、POST- 向指定的资源提交要被处理的数据【其他】1.简述同步和异步的区别同步是阻塞模式,异步是非阻塞模式。同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。2.浏览器的内核分别是什么?IE: trident 内核Firefox: gecko 内核Safari: webkit 内核Opera:以前是presto 内核, Opera 现已改用Google Chrome 的 Blink 内核Ch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电子商务在农业领域的应用实践
- 社区健康服务与心理援助的跨学科合作
- 客户经理经验交流发言稿
- 建筑工程项目经理年终总结
- 宾馆年终总结
- 酒店管理年终总结
- 公司前台年度工作计划
- 学期班务工作个人总结
- 项目前期工作计划
- 2023年宁夏回族自治区中考地理真题(原卷版)
- 2025年2级注册计量师专业实务真题附答案
- 果实品质评价体系建立与应用-深度研究
- 服装厂安全生产培训
- 城市隧道工程施工质量验收规范
- 2025年湖南高速铁路职业技术学院高职单招高职单招英语2016-2024年参考题库含答案解析
- 北京市东城区2024-2025学年高一上学期期末统一检测历史试卷(含答案)
- 2024年湖南省公务员录用考试《行测》真题及答案解析
- 人教版小学六年级下册音乐教案全册
- 2024年个人信用报告(个人简版)样本(带水印-可编辑)
- 20CS03-1一体化预制泵站选用与安装一
- (完整版)四年级上册数学竖式计算题100题直接打印版
评论
0/150
提交评论