Mindblown: a blog about philosophy.

  • The next global superpower isn’t who you think

  • Java Reflection And Features Notes

    反射——依赖注入框架原理 抽象工厂方法,FactoryBean.getBean(“”)  –>  Class.forName(“”). newInstance() forName()是静态方法 单例Singleton(饱汉、饿汉) 创建对象 this.class.getClassLoader.loadClass(“”). newInstance(); 此处写XML配置,利用properties对象读入inputStream,读取配置作为className 三个类: Class/Field/Method   clazz.getMethod()  getField();    field.get(Object obj)     method.invoke(Object obj, Object… args) 类装载器,父类加载,委托   动态代理  动态代理是基于什么原理 反射机制是 Java 语言提供的一种基础功能,赋予程序在运行时自省(introspect,官方用语)的能力。通过反射我们可以直接操作类或者对象,比如获取某个对象的类定义,获取类声明的属性和方法,调用方法或者构造对象,甚至可以运行时修改类定义。 动态代理是一种方便运行时动态构建代理、动态处理代理方法调用的机制,很多场景都是利用类似机制做到的,比如用来包装 RPC 调用、面向切面的编程(AOP)。 实现动态代理的方式很多,比如 JDK 自身提供的动态代理,就是主要利用了上面提到的反射机制。还有其他的实现方式,比如利用传说中更高性能的字节码操作机制,类似 ASM、cglib(基于 ASM)、Javassist 等。 @w=300 在静态代理基础上,静态代理没有引入Proxy类,需手动编码把被代理类作为属性引入 java代理,代理有2种,一种是jdk,代理与目标实现同一个接口,一种是CGLIB代理继承目标类 我们先关注jdk动态代理: 创建一个有相同接口的代理类Proxy—-JDK自动生成字节码。该代理类有一个属性invocationHandler,并有带该入参的构造方法    创建新类 invocationHandler,实现invocationHander接口的invoke(Proxy, method,  args)方法实现 实例化一个Proxy,参数是invocationHandler 优化二: 2和3合成一步,匿名内部类          …

  • Linux Shell Syntax

    一、单词:常用命令 useradd testuser  创建用户testuser passwd testuser  给已创建的用户testuser设置密码 sudo   切换用户    https://www.runoob.com/linux/linux-comm-sudo.html    vi /etc/sudoers    append  your_user_name ALL=(ALL)   ALL  添加用户,有sudo权限 curl     服务器调试tomcat restfull 服务 yum       在linux上安装软件、插件     https://www.cnblogs.com/chuncn/archive/2010/10/17/1853915.html sz          下载文件 rz           上传文件 scp        拷贝文件 cat   concatenate[kɒn’kætɪneɪt] 把 (一系列事件、事情等)联系起来    输入内容到文本中       CTRL +…

  • How do programmer learn to speak English

    我们习惯学习很多词法,语法,这些对阅读很有作用。但我们学10年英语,还是听不懂说不好。问题的关键在于我们没有掌握语音。 我们的词典是给你单词,然后给你注音。但通常我们都没有给与足够的经历在注音上。在笔者国外学习期间,国外语音老师会专门安排大量时间给你语音标注,让你写出单词。所以这里我想把这种由语音到单词的学习方法分享给大家,帮助大家能够读的出,听得懂,并且单词记得牢。 语音词汇表中有1万个单词,是过去9年积累在金山词霸的生词表的。导出生词表能够得到一个如下的文本文件。 然而信息很多,不够直观,我们只想看形如“& dʒʌŋk” 这样的注音,怎么处理呢。 像notepad这样的文本编辑器是可以编程的,程序员在学习程序设计语言时会学习正则表达式,只要写出匹配的正则表达式匹配删选出相应的&开头的语音标注,删掉其余的行,就能得到一个便于我们牢记语音字母和单词的词汇表。 这里用到的正则表达式是:

  • PHP Notes

    PHP语言概述 HTML内嵌式脚本语言,PHP:Hypertext Preprocessor(超级文本预处理) javascript是动态脚本语言,基于对象,采取事件驱动,。 html静态超文本标记语言 语法规则       包含 HTML 标签和一些 PHP 脚本代码。 PHP 中的每个代码行都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。 通过 PHP,有两种在浏览器输出文本的基础指令:echo和print。 变量 变量规则: 变量以 $ 符号开始,后面跟着变量的名称 变量名必须以字母或者下划线字符开始 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ ) 变量名不能包含空格 变量名是区分大小写的($y 和 $Y 是两个不同的变量) 先声明,后赋值 数据类型 String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值) 对比 java的数据类型 整型(byte2^8, short2^16, int2^32 40亿, long2^64,), 浮点型(float,double), 字符型(char), 布尔型, 集合, 类 预定义变量…

  • Python Notes

    github python学习区 https://blog.csdn.net/u010670689/article/details/51911240 书名:《Python程序设计入门到实战 》台湾人写的 python语法 python3语法 python软件包在线仓库 Module/package Function Requests http请求 os.path(built-in)  glob/ os.walk/ os.system/ shutil 操作文件、目录,磁盘操作 mysql-python  连接数据库 BeautifulSoup 提取网站数据 Selenium  操作浏览器javascript Django/Flask    Web app 换行符,缩进 换行和空格是有意义的,必须统一 java有分号“;”  有大括号{}控制模块 python用缩进写模块,没有大括号{} 换行  一般以新行作为为语句的结束符。使用斜杠( \)将一行的语句分为多行显示。语句中包含 [], {} 或 () 括号就不需要使用多行连接符。    数据类型     python有Numbers(数字)整型,浮点数型,空值(NONE)、String(字符串)、List(列表)、Tuple(元组)、Dictionary(字典) 字符串 索引,从0开始 列表 就是集合,数组。列表用 [ ] 标识,是 python 最通用的复合数据类型。 元组 是另一个数据类型,类似于List(列表)…

  • Hello 2020

    2020要来了,21世纪激动人心的第二个10年在中国社会高歌猛进,欢欣鼓舞并在结尾的2年结构性振荡,局势回落中,终于落下帷幕了。 21世纪的第三个十年是什么样子,我们是否还会有一个科技突破高潮迭起的十年,我们经历危机衰落之后,是否会赢来更加理性的回归,多元价值的融合,世界是平的进一步联结。 这个世界2000多年,很多道理一直没变。互联网时代的我们带着狂热追捧着一个个热点 ,疲于奔命,回顾起来却甚感无力,我们也都明白那些真正问题的解决从来需要潜心躬行,那些站在风口在技术或社会变革的奇点收割的人,总是极少数,一不具有重复操作性,二并未给社会创造真正持续性的价值。 人的改变是极其缓慢的,2019年终于开始慢慢转向用日程计划了。从古希腊就在讲笔记,时间安排,手机从2000年就有的便签,短信,行程,我们大多数人在时间就是金钱还是嫌它太慢,没有价值。

Got any book recommendations?