
Coding Language
我叫啥咧
这个作者很懒,什么都没留下…
展开
-
回调函数简介
回调函数是一种在编程中常见的概念,它是将一个函数作为参数传递给另一个函数(函数指针,函数的首地址),并在特定事件发生或特定条件满足时被调用执行的函数。以下是我对回调函数的简化的理解。原创 2024-04-13 00:48:14 · 462 阅读 · 0 评论 -
Java的类加载器
静态加载 vs 动态加载动态加载:程序在运行时调用相应方法,即使其他方法是错误的,程序依旧会执行。通过动态加载可以让程序的可延长性大大提升,对以后的维护和扩展有重要意义。静态加载:程序在编译时执行。在执行过程中加载所有可能执行到的程序。在这种加载方式下,只要加载中一个方法出错,程序就不能运行。我们一般写程序默认的是静态加载。但是其实还是看到new进行隐式调用。两个异常 (exception)静态加载的时候如果在运行环境中找不到要初始化的类, 抛出的是 NoClassDefFoundError,原创 2021-07-20 11:27:56 · 81 阅读 · 0 评论 -
值传递 vs 引用传递 vs 地址传递
是否是值传递:取决于是否发生了复制,并且操作的是地址的值(对于引用类型来说),比如java和python,js等的全部调用都是值传递,都是把指针复制了一份。并且操作的都是地址的值,如果是mutable的变量,那么不会改变地址的值因为,实际上中间其实还有几层指针。但是如果指向了一个immutable的值那么就会操作这个指针指向新的值。java和js中还分为基本类型和引用类型(对象);基本类型没有指针指向,直接操作该值。引用类型又分为mutable和immutable(常量指针)类型。但是java中s.原创 2021-07-19 11:01:56 · 101 阅读 · 0 评论 -
java泛型/c++模板 vs 多态 vs 重载
论目的:java泛型 vs 模板 vs 模板泛化 vs 重载所以用了泛型的话那么这个代码的结构是不会改变的,只是中间数据类型发生了变化,为了类型检查和之后不需要类型转化,那么就引入了泛型的机制。重载就不是这样了,而是根据传入数据类型,个数,顺序的不同,而使用完全不同的处理办法。泛型是为了传入不同类型的参数也要执行相同的运行的方法。但是不需要类型转换c++模板就是也是为了传入不同的代码也要用相同的代码进行处理,并且不会再运行阶段进行类型擦出对于普通方法的重载就是重载,对于模板方法的重载就是模板的特化原创 2021-07-19 10:34:35 · 254 阅读 · 0 评论 -
python/javascript/java一切皆为对象的理解
对于python中一切皆对象的理解:python中的一等公民可以赋值给一个变量可以添加到集合对象中可以作为参数传递给函数可以当做函数的返回值type,class,object的关系object是一切对象:list、str、dict、tuple的基类,同时object是type的实例类type是自身的实例,同时type也继承自object类由结论1和结论2,得出一切皆对象,同时一切皆继承自object类对于javascript中一切皆为对象的理解:应该是一切引用类型都是原创 2021-07-19 10:17:47 · 169 阅读 · 1 评论 -
编译 vs 解释
把高级语言翻译成机器语言的两种方式:一种是解释,一种是编译。两种方式只是翻译的时间不同,一种是边翻译边运行,另一种是翻译所有的代码,然后开始运行。bat和shell是比较纯粹的解释型语言和脚本语言perl和ruby是先编译成parse tree然后解释运行java和python是先编译成java字节码和python字节码然后再解释运行*c和c++*是纯粹的编译型语言,因为直接编译成为机器码...原创 2021-07-19 10:22:18 · 185 阅读 · 0 评论