一.概述 js是一种非常灵活的语言,理解js引擎的执行过程对于我们学习js是非常有必要的.看了很多这方便文章,大多数是讲的是事件循环(event loop)或者变量提升的等,并没有全面分析其中的过程.所以觉得把这个js执行的详细过程整理一下,帮助更好的理解js. 1.1基础概念 js是单线程语言. 在浏览器中一个页面永远只有一个线程在执行js脚本代码 js是单线程怨言,但是代码解析是非常迅速的,不会发生解析阻塞. js是异步执行的,通过实践循环(event loop)方式实现的 暂时我们不考虑事…
开篇声明,我博客中“小心情”这一系列,全都是日记啊随笔啊什么乱七八糟的.如果一不小心点进来了,不妨直接关掉.我自己曾经写过一段时间的日记,常常翻看,毫无疑问我的文笔是很差的,而且心情也是瞬息万变的.因此,如果你对我并不感兴趣,实在是没必要在我这里浪费时间. 前些日子刚刚看完<无限恐怖>,那感觉简直就像是新生一般.记得刚开始,只是因为晚上害怕,不敢睡觉,才去找书看的.当晚找到一个什么小说排行榜,评论中对<无限恐怖>评价很高,于是就看了看.结果,一发不可收拾…… 这部小说实在是好,开篇…
package com.tn.collect; import java.lang.reflect.Method; import java.util.ArrayList; public class Fanxin { public static void main(String[] args){ //泛型的作用是在编译阶段防止错误输入,绕过编译就绕过了泛型 //反射都是绕过编译操作 ArrayList<String> str=new ArrayList<String>(); str.a…
泛型作用于编译阶段: 泛型是作用于编译阶段,在编译阶段控制类型,以确保在编写代码的时候仅仅能传入指定类型数据到泛型集合对象中去. 怎样验证呢,贴代码例如以下: package highBasic.generic; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; public class StringAddToGeneri…
Chrome用户请尽快更新:谷歌发现两个严重的零日漏洞 https://news.cnblogs.com/n/647075/ 强烈建议:Chrome 用户请尽快升级浏览器!在谷歌今天发布的紧急补丁程序中修复了两个严重的零日漏洞,而其中一个已经被黑客利用.Chrome 安全小组表示,这两个漏洞均为 use-after-free 形式,允许黑客在受感染设备上执行任意代码.其中一个漏洞存在于浏览器的音频组件中,而另一个存在于 PDFium 库中.Windows.macOS 和 GNU/Linux 三大…
这两天打算实现拼音和简繁转换的方法, 发现Microsoft Visual Studio International Pack 1.0 SR1 提供了 .    下载地址 但是基于某些原因, 一来下载回来的是安装包 而某些msi文件安装必须安装VS2005或2008,比较麻烦. 二来不想在每个工程里面都引用里面的DLL. 所以打算把需要的Dll放入资源文件里面,然后调用里面的dll来实现. 之前只知道反射这个概念,从没怎么研究过,原本以为有很多现成的代码可供研究,但终究只有一些大概的原理. 最终…
用Delphi开发程序时,我们可以把遇到的Access Violation分成两大类:运行期和设计期. 一.设计期的Access Violation 1.硬件原因  在启动或关闭Delphi IDE以及编译一个Delphi工程时容易出现设计期的Access Violation.在你的计算机运行中出现 Access Violation信息可能由各种各样的原因引起,包括系统BIOS.操作系统或者是硬件驱动线,有些声卡.显卡.网卡实际上也会导致这种 错误.为什么这么说?计算机里的每一块卡都有它的设备驱…
假设现在有一个学生类 class Student { int age; public Student(int age) { this.age = age; } } 要使学生类之间能进行比较,实现System.IComparable接口的CompareTo方法 class Student : System.IComparable { int age; public Student(int age) { this.age = age; } public int CompareTo(object ob…
我记得以前在园子里面讨论这两个类的文章有很多很多,并且还拿出了很多的测试报告,在什么情况下,谁比谁快,在什么情况下,该用谁 不该用谁等等这些,我这里就不比较了,我就简单看看他们里面的内部实现,那就先看看String吧. 一:String类 说到String类,资料上都说是存在于堆上的一个不可CURD的一个不可变的字符集,当然看到这句话之后就想要看看是不是这样的,然后就 好奇的写了以下代码. class Program { static void Main(string[] args) { ";…
先记录一些零碎的知识点: 1. 一个类可以被声明多次,但只能定义一次,也就是可以 class B;  class B;  class B; ……;  class B {……};  这样子. 2. 一个类 C 的声明中(函数只声明还没定义)可以使用一个只被声明还没定义的类 B,但只能使用类 B 的指针或引用(用作函数参数或其他等等),不能是完整的对象. 3. 若类 C 的函数中需要使用到类 B 的函数,则类 B 的函数必须已定义好而不能只是声明. #include<iostream> class…