-
Java的“泛型”特性,你以为自己掌握了?
所属栏目:[语言] 日期:2021-06-03 来源:DaWei
在了解一个事物之前,我们必定要先知道他的定义,所以我们就从定义开始,去一步一步揭开泛型的神秘面纱。 # 泛型(generics) 他是 JDK5 中引入的一个新特性,泛型提供了编译时类型安全监测机制,该机制允许我们在编译时检测到非法的类型数据结构。泛型的本[详细]
-
用Python自动化管理邮件简直太简单了
所属栏目:[语言] 日期:2021-06-03 来源:DaWei
在之前的文章中我们已经了解如何对自己的邮箱做一些代码操作前的基础配置,以及通过 Python 代码收发、读取邮件。本文将简单复习之前的部分重点内容,并通过 3 个小案例进一步分享一个实用技巧:将邮件写入 Excel 中 之前的文章中我们也提到,基础配置需要[详细]
-
适合具备 C 语言基础的 C++ 攻略之一
所属栏目:[语言] 日期:2021-06-03 来源:DaWei
C 语言通常被认为是一种面向过程的语言,因为其本身的特性更容易编写面向过程的代码,当然也不排除使用 C 语言编写面向过程的代码,比如 Linux 的源代码以及现在很火的国产物联网操作系统 RT-Thread,其内核的实现方式都是使用 C 语言实现的面向对象的代码[详细]
-
什么是ABA问题?Java里面的原生解决计划是什么?
所属栏目:[语言] 日期:2021-06-03 来源:DaWei
ABA问题是CAS机制中出现的一个问题,他的描述是这样的。我们直接画一张图来演示, 什么意思呢?就是说一个线程把数据A变为了B,然后又重新变成了A。此时另外一个线程读取的时候,发现A没有变化,就误以为是原来的那个A。这就是有名的ABA问题。ABA问题会带来[详细]
-
喜新厌旧,是我的样子。今天就宠Mapstruct怎么了!
所属栏目:[语言] 日期:2021-06-03 来源:DaWei
这些年写Java写多了,感觉Java是越来越丑。尤其是在玩了TypeScript之后,看到Java代码总有一股想吐的感觉。这种思想的转变,从侧面上证明了,我并不是一个专一的人。 因为我是一条狗。 喜新厌旧,是我的本性,即使我把自己表现的很纯洁。 按理说,牛x的人[详细]
-
2021年Python程序员需要拥有的VS code插件
所属栏目:[语言] 日期:2021-06-03 来源:DaWei
VS Code在没有这个扩展的情况下也会支持Python代码高亮显示。但还是推荐你安装Python这个扩展,Python是由微软自己开发的,与VS Code是同一个创建者。它对提高Python开发人员的效率非常有用,VS Code会自动建议你在打开第一个.py文件后立即安装它。 但为什[详细]
-
PHP没戏了?想看PHP被舍弃还早着呢!
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
我写PHP将近20年了(可能更久,我不太记得我什么时候开始的了)。在用其他语言的时候,大多数情况下,我都会直接忽略对话的大部分内容。这么多年来,PHP都在渐渐失去生命力,我早就应该不用它了。在任何语言上我都称不上是专家,关于PHP我还有很多要学的,但[详细]
-
小白篇:Java原子组件和同步组件
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
在使用多线程并发编程的时,经常会遇到对共享变量修改操作。此时我们可以选择ConcurrentHashMap,ConcurrentLinkedQueue来进行安全地存储数据。但如果单单是涉及状态的修改,线程执行顺序问题,使用Atomic开头的原子组件或者ReentrantLock、CyclicBarrier[详细]
-
通过编写一个有趣的游戏学习 C 语言
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
从写一个函数来选择一个随机数字来开始猜数字游戏。在编写函数时,优秀的程序员会尽量使它们具有灵活性,这样他们就可以重用它们来解决略有不同的问题。因此,与其硬编码函数来选择 1 到 100 之间的一个随机数,不如编写函数来选择 1 到某个整数 maxval 之[详细]
-
Python中的函数分析:参数有冒号,声明后有- 箭头
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
我在查看python的fixture源码时发现 fixture的方法定义形式如下: deffixture( fixture_function:Optional[_FixtureFunction]=None, *, scope:Union[_Scope,Callable[[str,Config],_Scope]]=function, params:Optional[Iterable[object]]=None, autouse:bo[详细]
-
Python爬虫定时计划任务的几种常见技巧
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
1.方法一、while True 首先最容易的是while true死循环挂起,不废话,直接上代码: importos importtime importsys fromdatetimeimportdatetime,timedelta defOne_Plan(): #设置启动周期 Second_update_time=24*60*60 #当前时间 now_Time=datetime.now() #[详细]
-
分析SpringFramework与IOC依赖查找
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
1. 谈谈SpringFramework / 说说你理解的SpringFramework SpringFramework 是一个开源的、松耦合的、分层的、可配置的一站式企业级 Java 开发框架,它的核心是 IOC 与 AOP ,它可以更容易的构建出企业级 Java 应用,并且它可以根据应用开发的组件需要,整合[详细]
-
分析 Java 并发下的乐观锁
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
聊完原子操作了,我们进入正题。 大家都知道,一般而言,由于多线程并发会导致安全问题,针对变量的读和写操作,都会采用锁的机制。锁一般会分为乐观锁和悲观锁两种。 悲观锁 对于悲观锁,开发者认为数据发送时发生并发冲突的概率很大,所以每次进行读操作[详细]
-
魔法方法走进Python进阶学习大门
所属栏目:[语言] 日期:2021-06-02 来源:DaWei
collection.len()是面向对象语言的写法,len(collection)是Python语言的写法,这种风格叫做Pythonic。从前者到后者,就像变魔术一样,一瞬间让人眼前一亮。这个魔术就是Python魔法方法,或者叫双下方法,它是用双下划线开头和双下划线结尾的特殊方法,比如[详细]
-
小白篇:JDK8的日期处理API-必知必备
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
副标题#e# publicstaticInstantnow() publicstaticInstantnow(Clockclock) //根据毫秒生成Instant publicstaticInstantofEpochMilli(longepochMilli) //根据秒生成Instant,外附加纳秒单位的数值 publicstaticInstantofEpochSecond(longepochSecond,longnan[详细]
-
Python骚操作从列表推导和生成器表达式出发
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
列表推导 Python语言魅力在于简洁,这能从最常见的创建列表体现出来,比如我们想把字符串abc转换成新列表[a, b, c],常规写法: symbols=abc codes=[] forsymbolinsymbols: codes.append(symbol) print(codes)#[a,b,c] 用到了for循环和列表append方法。实[详细]
-
Java比C++慢?看了测试结果,推翻了我的认知,不得不说JIT真的强
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
编程语言根据其抽象级别进行分类。我们区分高级语言(Java,Python,JavaScript,C ++,Go),低级语言(汇编程序),最后是机器代码。 每个高级语言代码(例如Java)都需要转换为机器本地代码才能执行。该翻译过程可以是编译或解释。但是,还有第三种选择。试图[详细]
-
利用C语言中的Setjmp和Longjmp,来完善异常捕获和协程
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
在 C 标准库中,有两个威力很猛的函数:setjmp 和 longjmp,不知道各位小伙伴在代码中是否使用过?我问了身体的几位同事,一部分人不认识这两个函数,有一部分人知道这个函数,但从来没有使用过。 从知识点范围来看,这两个函数的功能比较单纯,一个简单的[详细]
-
一键迈向二次元!用Python将自拍转换为卡通风格
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
第一个步骤是载入图片。定义read_file函数,其中包含cv2_imshow,来载入我们在Google Colab中选择的图片。 defread_file(filename): img=cv2.imread(filename) cv2_imshow(img) returnimg 调用创建的函数来载入图像: uploaded=files.upload() filename=ne[详细]
-
Rust不应当开发Web API
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
Rust 有大量的 Web 服务框架、数据库连接器和解析器。但搭建身份验证服务方面只有非常低层次的组件。Node.js 有 passport.js,Rails 有 devise,Django 有 开箱即用的身份验证模型,在 Rust 中,你需要学习如何将共享 Vec 转换到底层加密库才能构建这个系[详细]
-
怎样在Java Pojo转Jsoy时忽略掉一些属性
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
在Java开发中有时候某些敏感信息我们需要屏蔽掉,不能被消费这些数据的客户端知道。通常情况下我们会将其设置为null或者空字符,其实还有其它办法,如果你使用了Jackson的话。接下来我将以一个实际场景来告诉你可以怎么做。 2. Jackson 如何忽略字段 这里[详细]
-
分析Dictionary实现日志数据批量插入
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
副标题#e# 最近再做一个需求,就是对站点的一些事件进行埋点,说白了就是记录用户的访问行为。那么这些数据怎么保存呢,人家点一下保存一下?显然不合适,肯定是需要批量保存,提高效率。 问题窥探 首先,我想到的是Dictionary,对于C#中的Dictionary类相信[详细]
-
带着10万字的笔记,C++优化系列来了!
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
不知不觉又到周一了,你是不是还在床上?看到这条推送的时候,如果你已起床,请在评论区扣1,让程序喵看看有多少人和我一样勤奋!最近C++技术交流群发现了很多水平很高的朋友,欢迎大家来加喵哥微信,进群一起讨论计算机知识! 近期我会推出一系列C++优化文章[详细]
-
花了两天,总算把 Python 的 Setup.py 给整明白了
所属栏目:[语言] 日期:2021-06-01 来源:DaWei
1. 为什么需要对项目分发打包? 平常我们习惯了使用 pip 来安装一些第三方模块,这个安装过程之所以简单,是因为模块开发者为我们默默地为我们做了所有繁杂的工作,而这个过程就是 打包。 打包,就是将你的源代码进一步封装,并且将所有的项目部署工作都事[详细]
-
人像摄影中自然光与人造光摄影教程
所属栏目:[语言] 日期:2021-05-30 来源:DaWei
如果被摄对象皮肤颜色较浅,自然光是最好的选择。浅色皮肤反光更为强烈,会让你希望不做的面部细节损失殆[详细]




浙公网安备 33038102330484号