C# 高级面试题】的更多相关文章

php高级面试题知识点大全 时间:2016-01-26 06:36:22来源:网络 导读:php高级面试题知识点大全,本套面试题内容包括php魔术方法.php单点登录.linux基本命令.前端开发技术等,不错的php面试题.   php高级工程师面试题 1,基本知识点http协议中几个状态码的含义:503 500 401 200 301 302...include require include_once require_once 的区别.php/mysql中几个版本的进化史,比如mysql4.…
最近,在看一些java高级面试题,我发现我在认真研究一个面试题的时候,我自己的收获是很大的,我们在看看面试题的时候,不仅仅要看这个问题本身,还要看这个问题的衍生问题,一个问题有些时候可能是一个问题群(如果只关注问题本身,可以跳过补充部分). 这个是我一个多星期的奋战结果,把它记录下来,如有不当,希望大家不吝赐教. java 线程池的实现原理,threadpoolexecutor关键参数解释 原理见下图 (或者:https://blog.csdn.net/u013332124/article/de…
title author date CreateTime categories C# 高级面试题 lindexi 2019-11-19 08:40:50 +0800 2018-11-12 11:18:2 +0800 C# 很少会有人可以答对,如果你遇到一个来面试的人实在嚣张,就可以用本文的题去打击 本文内容就看着玩,请不要在严肃的面试中问题这样的题目 如果面试到一个人可以回答出下面的题目也不能证明他的技术很强,只能说明他了解很多C#相关,或者他看过我的博客 循环下面的代码 请在下面的代码的注释处…
Java概念题 拆箱装箱的原理 自动装箱时编译器调用valueOf将原始类型值转换成对象,同时自动拆箱时,编译器通过调用类似intValue(),doubleValue()这类的方法将对象转换成原始类型值. 只有double和float的自动装箱代码没有使用缓存,每次都是new 新的对象,其它的6种基本类型都使用了缓存策略.      使用缓存策略是因为,缓存的这些对象都是经常使用到的(如字符.-128至127之间的数字),防止每次自动装箱都创建一次对象的实例.      而double.flo…
简述23种设计 抽象工厂模式(Abstract Factory):提供一个创建一系列相关或相互依赖对象的接口.而无需指定它们详细的类. 适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口.适配器模式使得原本因为接口不兼容而不能一起工作的类能够一起工作. 桥梁模式(Bridge):将抽象部分与他的实现部分分离.使他们都能够独立的变化. 建造模式(Builder):将一个复杂对象的构建与他的标表示分离,使相同的构建过程能够创建不同的表示. 责任链模式(Chain of Resp…
前言: 时隔数月,我终于又更新博客了,然而,在这期间的粉丝数也就跟着我停更博客而涨停了,唉 是的,我改了博客名,不知道为什么要改,就感觉现在这个名字看起来要洋气一点. 那么最近到底咋不更新博客了呢?说起原因那就多了,最主要的还是没时间了,是真的没时间,前面的那些系列博客都还没填坑完毕的(后续都会填上的) 最近有点空余就一直在开发我的项目,最近做了两个项目: IPproxy,看名字就知道啦,就是一个ip代理池,爬取了各大免费的代理网站,然后检测可用性,github地址   相关的介绍github上…
这是我收集的10道高级Java面试问题列表.这些问题主要来自 Java 核心部分 ,不涉及 Java EE 相关问题.你可能知道这些棘手的 Java 问题的答案,或者觉得这些不足以挑战你的 Java 知识,但这些问题都是容易在各种 Java 面试中被问到的,而且包括我的朋友和同事在内的许多程序员都觉得很难回答. 1. 为什么等待和通知是在 Object 类而不是 Thread 中声明的? 一个棘手的 Java 问题,如果 Java编程语言不是你设计的,你怎么能回答这个问题呢.Java编程的常识和…
很少会有人可以答对,如果你遇到一个来面试的人实在嚣张,就可以用本文的题去打击 本文内容就看着玩,请不要在严肃的面试中问题这样的题目 如果面试到一个人可以回答出下面的题目也不能证明他的技术很强,只能说明他了解很多C#相关,或者他看过我的博客 循环下面的代码 请在下面的代码的注释处填写代码,让函数 Foo 里面的代码输出 static void Main(string[] args) { // 请在此处写代码,调用 Foo 函数内的输出代码 } private static void Foo() {…
在网上看到一些高级php 的面试题目.. 最近接连面试了几家公司,有些重要问题记录一下,督促自己学习提高,同时希望给朋友们一些帮助.内容很多,一点点完善,一步步学习..有些是面试被问,有些是招聘要求,有些是自己整理加的. 一.mysql相关知识    1. mysql优化方式            MYSQL 优化常用方法            mysql 性能优化方案      2.如何分库分表           参考:http://blog.sina.com.cn/s/blog_6e322…
1.装箱和拆箱: 装箱:把基本数据类型转化为对应的引用数据类型的操作: var num = 123 // num var objNum = new Num(123) // object console.log(typeof objNum) // null 拆箱:将引用类型对象转换为对应的值类型数据对象: valueOf() var objNum = new Number(132) console.log(typeod objNum.valueOf()) // 123 number js toPr…
一 性能优化 1.如何对 Android 应用进行性能分析 android 性能主要之响应速度 和UI刷新速度. 可以参考博客:Android系统性能调优工具介绍 首先从函数的耗时来说,有一个工具TraceView 这是androidsdk自带的工作,用于测量函数耗时的. UI布局的分析,可以有2块,一块就是Hierarchy Viewer 可以看到View的布局层次,以及每个View刷新加载的时间. 这样可以很快定位到那块layout & View 耗时最长. 还有就是通过自定义View来减少…
一. 基础知识: 1)集合类:List和Set比较,各自的子类比较(ArrayList,Vector,LinkedList:HashSet,TreeSet): 2)HashMap的底层实现,之后会问ConcurrentHashMap的底层实现: 3)如何实现HashMap顺序存储:可以参考LinkedHashMap的底层实现: 4)HashTable和ConcurrentHashMap的区别: 5)String,StringBuffer和StringBuilder的区别: 6)Object的方法…
说下你所知道的设计模式与使用场景 a.建造者模式: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. 使用场景比如最常见的AlertDialog,拿我们开发过程中举例,比如Camera开发过程中,可能需要设置一个初始化的相机配置,设置摄像头方向,闪光灯开闭,成像质量等等,这种场景下就可以使用建造者模式 装饰者模式:动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活.装饰者模式可以在不改变原有类结构的情况下曾强类的功能,比如Java中的Buff…
最近面试了一些公司,针对面试中遇到的问题在此记录,提升自己,造福大家 一.java源码相关 ArrayList创建和add等各种api使用原理 HashMap 的创建,put原理,和HashTable的区别,resize的原理 HashMap和HashTable在1.7版本之后的区别,针对创建时和put时处理的方式不同(红黑树,CAS.ABA处理) 各种IO交互(AIO/ NIO/ BIO) 二. JVM相关 (bookname:深入理解java虚拟机) jvm分区 java文件加载到gc全流程…
说下你所知道的设计模式与使用场景 a.建造者模式: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. 使用场景比如最常见的AlertDialog,拿我们开发过程中举例,比如Camera开发过程中,可能需要设置一个初始化的相机配置,设置摄像头方向,闪光灯开闭,成像质量等等,这种场景下就可以使用建造者模式 装饰者模式:动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活.装饰者模式可以在不改变原有类结构的情况下曾强类的功能,比如Java中的Buff…
List和Set比较,各自的子类比较 对比一:Arraylist与LinkedList的比较 1.ArrayList是实现了基于动态数组的数据结构,因为地址连续,一旦数据存储好了,查询操作效率会比较高(在内存里是连着放的). 2.因为地址连续, ArrayList要移动数据,所以插入和删除操作效率比较低. 3.LinkedList基于链表的数据结构,地址是任意的,所以在开辟内存空间的时候不需要等一个连续的地址,对于新增和删除操作add和remove,LinedList比较占优势. 4.因为Lin…
JVM 1.请介绍一下JVM内存模型??用过什么垃圾回收器都说说呗 2.线上发送频繁full gc如何处理? CPU 使用率过高怎么办? 如何定位问题?如何解决说一下解决思路和处理方法 3.知道字节码吗?字节码都有哪些?Integer x =5,int y =5,比较x =y 都经过哪些步骤? 4.讲讲类加载机制呗都有哪些类加载器,这些类加载器都加载哪些文件? 手写一下类加载Demo 5.知道osgi吗? 他是如何实现的??? 6.请问你做过哪些JVM优化?使用什么方法达到什么效果??? 7.c…
一.基础知识: 1)集合类:List和Set比较,各自的子类比较(ArrayList,Vector,LinkedList:HashSet,TreeSet): 2)HashMap的底层实现,之后会问ConcurrentHashMap的底层实现: 3)如何实现HashMap顺序存储:可以参考LinkedHashMap的底层实现: 4)HashTable和ConcurrentHashMap的区别: 5)String,StringBuffer和StringBuilder的区别: 6)Object的方法有…
<script> //1. var foo = { bar: function () { return this.baz; }, baz: 1 }; (function () { return typeof arguments[0](); })(foo.bar); //foo.bar方法没有参数,typeof arguments[0]()为undefine //2. var f = (function f() { return "1"; }, function g() {…
1.写一下UIButton与UITableView的层级结构  2.Cocoa的Foundation对象与Core Foundation对象通过什么keyword进行转换?这些keyword有什么差别?  3.KVO是什么?内部是怎么实现的?  4.能否够把比較耗时的操作放在NSNotificationCenter中处理?为什么?应该怎样处理?  5.利用NSOperation与NSOperationQueue处理多线程时.有3个NSOperation分别为A,B,C,要求A,B运行完之后,才运…
中通快递分布式技术开发   gc垃圾回收原理 .net中,托管代码的内存管理是自动的,由GC进行管理,而对于非托管代码,则需要.net手动处理 CLR运行时,内存分为:托管堆和栈,其中栈用于存储值类型数据,托管堆用于存储引用类型数据,其中托管堆是GC处理的内存部分. 设计原则:单一职责 即一个类只负责一项职责 csrf与xss区别,如何防御 1000万数据高并发处理 full trust是什么 分布式事务 clr如何分配内存 csrf与xss区别,如何防御 asp.net工作原理 每天有1000…
转自http://chaoyouzhuo.blog.163.com/blog/static/1263760012011109114131316/ 1. DateTime.Parse(myString); 这段代码有什么问题? A:区域信息即CultureInfo没有指定.如果不指定的话,它将采用默认的机器级的设置(见:控制面板->区域和语言选项)并使用这个设置来决定这个字符串即myString怎样被解释.所以如果你传入“5/2/2005”且你的区域设置为En-US,则它会被解释为May 2nd…
callback hell方法的使用 可读性不友好 function loadImg(src,callback,fail){ var img = document.createElement('img'); img.onload = function(){ callback(img); } img.onerror = function(){ fail(); } img.src = src; } var src = "https://www.baidu.com/img/baidu_jgylogo3…
基本概念 操作系统中 heap 和 stack 的区别 heap是堆,stack是栈,是两种不同的数据结构.堆是队列优先,先进先出:栈是先进后出. 在java多线程中,每个线程都有自己的栈:不同的线程共享一个堆. 在java内存中,栈中存放的大多数是方法的参数.局部变量,调用完后立即释放空间:堆中存放的是由new创建的对象和数组,生命周期由JVM的垃圾回收算法决定. 什么是基于注解的切面实现 首先说切面编程:为了方便,将一些公共的类似的地方抽取出来,开发时只需要关注具体业务,这个公共类似的东西就…
需求 如果需要将可能含有中文的字符串进行拆分成数组,我们下面以 utf-8 编码为例. 解决方案一 我习惯的方法可能是: mb_internal_encoding("UTF-8"); $str = "周梦康"; $array = []; for ($i=0,$l = mb_strlen($str); $i < $l; $i++) { array_push($array, mb_substr($str, $i, 1, "utf-8")); }…
本文涉及:投递失败的消息怎么处理.如何实现延时队列.如何指定消息的优先级.消息的持久化是如何实现的.如何保证消息不丢失 投递失败的消息怎么处理 首先投递失败存在如下两个情况 当交换器无法根据自身的类型和路由键找到符合条件的队列 如果交换器在将消息路由到队列时发现队列上并不存在任何消费者 解决方案: 在生产者投递消息时指定mandatory或者imrnediate参数设为 true 时,RabbitMQ 会把无法投递的消息通过Basic.Return 命令将消息返回给生产者,此时生产者需要调用ch…
每天搬一点砖,总有一天成为大牛! 看问题的时候请不要立马去翻答案,多想想. 看完答案可以问问为什么,尝试拓展!一起加油吧! 每个答案后面都有一个小彩蛋(一个以上的拓展问题),钻研让你先人一步. java 基础篇(初中级)    1.java跨平台的原因  https://www.cnblogs.com/leifei/p/11745467.html 2.javaInt占几个字节 3.什么是装箱和拆箱 4.==和.equals的区别 5.String,StringBuffer与StringBuild…
Redis 持久化机制 Redis 是一个支持持久化的内存数据库,通过持久化机制把内存中的数据同步到硬盘文件来 保证数据持久化.当 Redis 重启后通过把硬盘文件重新加载到内存,就能达到恢复数据的目 的.实现:单独创建 fork()一个子进程,将当前父进程的数据库数据复制到子进程的内存中,然 后由子进程写入到临时文件中,持久化的过程结束了,再用这个临时文件替换上次的快照文 件,然后子进程退出,内存释放. RDB 是 Redis 默认的持久化方式.按照一定的时间周期策略把内存的数据以快照的形式保…
1.Activity相关.launchmode,OnSaveInstnceState,生命周期等. 4种默认的launchmode,以及OnNewIntent的回调. OnNewIntent->OnRestart->OnStart->onResume OnActivity->OnResume. OnNewIntent ,OnActivityResult? OnNewIntent launchmode with singletask or singleInstance. but if…