亚瑟 亚瑟
4年前
Flutter - 深入理解Flutter动画原理
基于Flutter1.5,从源码视角来深入剖析flutter动画原理,相关源码目录见文末附录一、概述动画效果对于系统的用户体验非常重要,好的动画能让用户感觉界面更加顺畅,提升用户体验。1.1动画类型Flutter动画大的分类来说主要分为两大类:补间动画:给定初值与终值,系统自动补齐中间帧的动画物理动画:遵循物理学定律
Wesley13 Wesley13
3年前
Java中ArrayList的向上转型问题(父类与子类的关系)
果然是java都没学好,今天写方法的时候想把方法参数写成List<父类,然后传子类进去统一处理,结果发现报错。丢人地百度了:ArrayList<ChildClass();包括泛型在内的整个作为类型是无法强转成ArrayList<FatherClass 如果想这样使用可以使用extends关键字来限制泛型参数的适用范围 List<T
Stella981 Stella981
3年前
Groovy常用编程知识点简明教程
概述Groovy是一门基于JVM的动态类型语言,可以与Java平台几乎无缝融合(与Java代码一样编译成字节码)。使用Groovy,可以增强Java应用的灵活性和可扩展性,提升开发效率。使用GroovySpock组合也更容易编写简洁易懂的单测。熟练使用Groovy编程是很有益处的。本文针对已有一定java开发
Stella981 Stella981
3年前
Elasticsearch从入门到放弃:瞎说Mapping
前面我们聊了Elasticsearch的索引、搜索和分词器,今天再来聊另一个基础内容——Mapping。Mapping在Elasticsearch中的地位相当于关系型数据库中的schema,它可以用来定义索引中字段的名字、定义字段的数据类型,还可以用来做一些字段的配置。从Elasticsearch7.0开始,Mapping中不在乎需要
Wesley13 Wesley13
3年前
JDBC四种驱动程序
四种JDBC驱动程序JDBCODBC桥驱动程序(JDBCODBCBridgeDriver)此类驱动程序由JDBCODBC桥和一个ODBC驱动程序组成。其工作原理是,通过一段本地C代码将JDBC调用转化成ODBC调用。这一类型必须在本地计算机上先安装好ODBC驱动程序,然后通过JDBCODBCBridge的转换,将Java程序中使用
Stella981 Stella981
3年前
Python调用C语言函数
在C调用Python模块时需要初始化Python解释器,导入模块等但Python调用C模块却比较简单,ctypes模块提供了和C语言兼容的数据类型和函数来加载dll或so文件,因此在调用时不需对源文件做任何的修改1.编写C语言代码,可参考https://www.cnblogs.com/zhouzhishuai/p/9529487.html(ht
Stella981 Stella981
3年前
ASMSupport教程4.12 生成方法调用操作
<p这一节我们讲如何用ASMSupport生成方法调用的操作,方法调用包括下面四种类型:</p<ol<li调用构造方法<li调用静态方法<li调用非静态方法<li调用当前类的方法<li调用父类方法</li</ol<p首先我们需要看我们想要生成的类:</p<p代码1:</p<h3<divid"scid:9D
Wesley13 Wesley13
3年前
Java空格编写规范
原则上变量、类、常量数据和函数在其类型,修饰名称之间适当空格并据情况对齐。关键字原则上空一格,如:if(... 等。运算符的空格规定如下:"::"、""、"\"、"\"、""、""、"~"、"!"、""、""(指正负号)、"&"(引用)等几个运算符两边不加空格(其中单目运算符系指与操作数相连的一边),其它运算符(包括
Stella981 Stella981
3年前
SpringBoot2 全局异常处理
参考这篇文章里面的几种异常形式:全局异常处理是个比较重要的功能,一般在项目里都会用到。 大概把一次请求分成三个阶段,来分别进行全局的异常处理。 一:在进入Controller之前,譬如请求一个不存在的地址,404错误。 二:在执行@RequestMapping时,进入逻辑处理阶段前。譬如传的参数类型错误。 
CDN网关超大range计算方法
目前CDN网关openresty中的lua遇到两个超大数值,计算两个数值的差、和是不支持的,因为lua支持最大的数值的位数大小是19位,当数值大于19位的时候,会自动变成指数类型,例如:1.22222e19,并且两个同位超大数值比较大小也是不支持的,如下(20位数):