首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏海天一树

    小朋友学C++(10):子类构造函数调用构造函数

    从哲学层面来看,子类会继承除private以外的所有成员。 因为构造函数是公有的,所以理所当然地会被子类继承。 分析: 这里构造函数的写法是 Rectangle() : Shape() { 子类构造函数本身的语句; } 这是先调用的构造函数,再执行它本身的语句。从运行结果也可以看出这一点。 那么,如果不显示调用的构造函数Shape()呢?的构造函数就不被调用了吗? 咱们可以用下面的程序来验证。

    2.4K60发布于 2018-04-17
  • 来自专栏用户7873631的专栏

    dom啦 10 关闭广告实例 (核心:想要删掉某一个元素就找它自己的元素,由元素执行删掉它)

    javascript"> let qq=document.querySelector("div>img:first-child"); qq.onclick=function() { //找到img的元素 div let ww=this.parentNode; //然后找到div的元素(body)执行删掉div的操作。

    74840发布于 2020-10-28
  • 来自专栏C++核心准则原文翻译

    C++核心准则C.10:具体类型要好于继承

    C.10: Prefer concrete types over class hierarchies C.10:具体类型要好于继承 译者注:具体类型的定义请参照大师本人作品《C++程序设计语言》第四版的 具体类型可以在堆栈上分配而且成为其他的成员。 我们可以使用基作为某些派生对象的接口。当动态分配被禁止(例如在硬实时系统中)时,或者为某些插件提供稳定接口是就是这么做的。 译者注:间接访问应该指的是使用指针访问子类对象的情况。 原文链接: https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#c10-prefer-concrete-types-over-class-hierarchies

    53420发布于 2020-03-25
  • 来自专栏C++核心准则原文翻译

    C++核心准则T.150:用static_assert检查和概念的匹配

    T.150: Check that a class matches a concept using static_assert T.150:用static_assert检查和概念的匹配性 Reason 如果你希望一个和概念相匹配,尽早地检查可以减轻用户的痛苦。

    57520发布于 2020-10-10
  • 单细胞Scanpy流程学习和整理(单样本10X数据读取过滤降维聚)

    它是Python的核心库之一,不需要额外安装,可以直接导入使用。 的数据,所以选择sc.read_10x_mtx进行读取。 ", y="n_genes_by_counts")11、进一步过滤把count数在2500和线粒体百分比在5以上的信息全过滤掉。 # 结果:保留基因数量少于 2500 的细胞,过滤掉其他细胞。 # sc.tl (tl 是 tools 的缩写):用于各种分析工具的调用,例如 PCA、聚、UMAP、差异表达分析等。

    4.4K10编辑于 2024-09-25
  • 来自专栏JAVA乐园

    浅析 Spring Security 的认证过程及相关过滤

    Spring Security 的核心之一就是它的过滤器链,我们就从它的过滤器链入手,下图是Spring Security 过滤器链的一个执行过程,本文将依照该过程来逐步的剖析其认证过程。 核心过滤器链简介 Spring Security 中的过滤器有很多,一般正常的项目中都有十几个过滤器,有时候还包含自定义的过滤器,当然我们不可能对每一个过滤器都进行分析,我们需要抓住重点,找比较关键的几个过滤器 上面已经简述了一堆核心过滤器,这里先从 SecurityContextPersistenceFilter这个过滤器的开端开始分析整个表单登录的认证过程。 的是 AbstractAuthenticationProcessingFilter,首先进入的 foFilter方法,部分源码如下: public abstract class AbstractAuthenticationProcessingFilter 大多数情况下我们会依靠它来进行身份认证,它的是 AbstractUserDetailsAuthenticationProvider ,认证过程首先会调用的 authenticate方法,核心源码如下

    85610编辑于 2022-12-05
  • 来自专栏程序猿DD

    【译】Spring 官方教程:Spring Security 架构

    ProviderManager 可以有一个认证器,如果所有的提供者返回null,则将再交给去认证。 如果不可用,则会导致 AuthenticationException。 通常,每个人都是一个 ProviderManager,他们共享一个。 父母是一种“全局”资源,充当所有提供者的失败回调。 ? 图 1. 以下是配置全局() AuthenticationManager的应用程序示例: @Configuration public class ApplicationSecurity extends WebSecurityConfigurerAdapter 请注意, AuthenticationManagerBuilder 是 @Autowired 到 @Bean 中的一个方法 - 使用它构建全局() AuthenticationManager。 ,一个是整个过滤器链的请求匹配器,另一个只是选择应用的访问规则。

    2.2K70发布于 2018-03-26
  • 来自专栏pandacode_cn

    搭建单体SpringBoot项目 集成MybatisPlus代码生成

    ,多 schema 场景的时候打开 // .likeTable(new LikeTable("USER")) // 模糊表匹配(sql 过滤) likeTable ) likeTable 与 notLikeTable 只能配置一项 .addInclude(ADD_INCLUDE) // 增加表匹配(内存过滤) include 与 exclude 只能配置一项 // .addExclude("a_abc") // 增加表排除匹配(内存过滤) include 最简单的基础,当然也可以不使用自己的基础,直接使用MybatisPlus默认的基础,只需要把配置的代码删掉就可以。 * * @className: BaseEntity * @author: GuoShunFa * @date: 2022/11/10 **/ @ApiModel("基础") public

    57900编辑于 2023-07-17
  • Agent开发:Java视角下的RAG数据处理

    1.核心策略:语义与结构的博弈在目前的实践中,“一刀切”的固定长度分块已被抛弃,现代JavaAgent主要采用以下差异化策略:第一:必须基于“条目边界”切分。 利用正则匹配第X条,确保一个完整的法条不被切断。第二:基于“语义单元”切分。必须保留缩进,并在元数据中注入名和方法名。第三:采用“问答对”模式。保持一问一答为一个块,绝不将一个回答拆成两半。 块(Parent):保留较大的原始上下文,在最终生成时喂给大模型。逻辑流程:命中子块->通过parent_id追溯到块->将块发给LLM。 ChunkOverlap(重叠度):推荐10%-20%。想象一下把一本书沿着胶水缝切开,重叠就像胶水,防止核心信息掉落在两个块的缝隙里。 这能过滤掉那些“相似但错误”的噪音。

    9910编辑于 2026-04-24
  • 来自专栏ApacheHudi

    Apache Hudi索引实现分析(二)之HoodieGlobalBloomIndex

    分析 HoodieGlobalBloomIndex是HoodieBloomIndex的子类,其主要重写了的如下几个方法 // 加载分区下所有最新的文件 List<Tuple2<String, BloomIndexFileInfo metaClient.getFs(), metaClient.getBasePath(), config.shouldAssumeDatePartitioning()); // 调用方法加载所有分区下最新数据文件 { throw new HoodieIOException("Failed to load all partitions", e); } } 首先会获取所有的分区路径,然后调用方法获取分区下最新数据文件 .flatMap(List::iterator); } 可以看到和 HoodieBloomIndex#explodeRecordRDDWithFileComparisons处理逻辑类似,在使用索引过滤器获取所有匹配的文件和分区路径时 } else { return getTaggedRecord(hoodieRecord, Option.empty()); } }); } 其处理逻辑与处理逻辑相同

    87420发布于 2021-04-13
  • 来自专栏开发框架-Spring Boot

    【Spring Boot 源码学习】OnClassCondition 详解

    引言上篇博文带大家从源码深入了自动配置过滤匹配 FilteringSpringBootCondition,那么笔者接下来的博文将要介绍它的三个子类 OnClassCondition、OnBeanCondition ConditionalOnClass 注解配置的,然后调用 FilteringSpringBootCondition 中的 filter 方法,获取匹配失败的集合。 如果匹配失败的集合不为空,则返回不满足过滤匹配的结果【即 ConditionOutcome.noMatch.didNotFind,其中不存在需要的】List<String> missing = filter ConditionalOnMissingClass 注解配置的,然后调用 FilteringSpringBootCondition 中的 filter 方法,获取匹配成功的集合。 如果匹配成功的集合不为空,则返回不满足过滤匹配的结果【即 ConditionOutcome.noMatch.found,其中存在不想要的】List<String> present = filter(

    26521编辑于 2024-05-07
  • 来自专栏编程技术沉思录

    深入理解Spring Security授权机制原理

    拦截过程主要一个动作,是把该请求所拥有的权限集与@PreAuthorize设置的权限字符“sys:user:add”进行匹配,若能匹配上,说明该请求是拥有调用“/save”接口的权限,那么,就可以被允许执行该接口资源 主要授权功能在AbstractSecurityInterceptor中实现; 我们将从FilterSecurityInterceptor这里开始重点分析Security授权机制原理的实现。 super.afterInvocation(token, null); 24 } 25 } 授权机制实现的入口是super.beforeInvocation(fi),其具体实现在 > clazz); 7 } AccessDecisionManager是一个interface接口,这是授权体系的核心。 到这一步,代码就开始难懂了,这部分封装地过于复杂,总体的逻辑,是将用户信息所具有的权限与该接口的权限表达式做匹配,若能匹配成功,返回true,在三目运算符中, allowed ?

    3.1K20发布于 2020-12-28
  • 来自专栏开发框架-Spring Boot

    【Spring Boot 源码学习】深入 FilteringSpringBootCondition

    AutoConfigurationImportFilter { // 自动配置组件的过滤匹配 boolean[] match(String[] autoConfigurationClasses 、OnClassCondition、OnWebApplicationCondition 继承该抽象,实现 getOutcomes 方法,完成实际的过滤匹配操作。 而这个 getOutcomes 方法是过滤匹配核心功能,由抽象 FilteringSpringBootCondition 的子类来实现它。 是 ClassNameFilter.MISSING,则 filter 方法获取指定的集合中加载失败的集合【即匹配失败的集合】。 总结本篇 Huazie 带大家介绍了自动配置过滤匹配核心 FilteringSpringBootCondition,这对于笔者后续博文详解它的三个子类【OnBeanCondition、OnClassCondition

    25721编辑于 2024-05-06
  • 来自专栏新零售项目实践

    从浏览器原理拆解:为什么你的CSS选择器拖慢了页面?

    其根源在于浏览器渲染机制的三个核心特性:从右向左的匹配机制:浏览器先定位关键选择器(最右侧),再反向回溯节点,低效关键选择器会导致遍历成本指数级上升;样式重算的连锁反应:一个选择器匹配的节点变化可能触发整个渲染树的重新计算 例如选择器 .nav li a 的执行逻辑是:收集页面所有 标签(关键选择器)向上过滤元素是否为

  • 再向上过滤是否在 .nav 中。 性能陷阱:若页面有 1000 个 标签,则需执行 1000 次链检查,时间复杂度 O(n³)。 过滤机制:先快速筛选可能匹配的元素,再验证祖先关系。回溯成本:复杂的选择器需要更多的回溯验证。 CSS 选择器优化的核心是对渲染机制的深度适配:性能优先场景(如动画组件):严格遵循关键选择器优化原则,使用选择器 + CSS 变量。

45520编辑于 2025-07-17
  • 来自专栏每日一Java,进步一点点

    MybatisPlus——全网配置最全的代码生成器

    ) 模糊表匹配(sql 过滤) likeTable 与 notLikeTable 只能配置一项 notLikeTable(LikeTable) 模糊表排除(sql 过滤) likeTable 与 notLikeTable 增加表匹配(内存过滤) include 与 exclude 只能配置一项 addExclude(String...) 增加表排除匹配(内存过滤) include 与 exclude 只能配置一项 addTablePrefix(String...) 增加过滤表前缀 addTableSuffix(String...) NULL DEFAULT NULL COMMENT '年龄', email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱', version INT(10 .mapperBuilder() .superClass(BaseMapper.class) //设置

    4.4K20编辑于 2022-09-23
  • 来自专栏硬核项目经理的专栏

    Vue.js前端开发快速入门与专业应用

    元素注册了一个索引,使得我们可以直接访问DOM元素,可以通过扩展性实例的$els属性调用,或者在vm内部通过this进行调用 9.v-ref,与v-el类似,只不过作用于子组件上,实例可以通过$refs访问子组件 10 1.Vue.js提供了全局方法Vue.filter()注册一个自定义过滤器,接受过滤器的ID和过滤器函数两个参数 2.在2.0中取消了内置过滤器,即capitalize、uppercase、json等 过渡 1.使用transition绑定一个DOM元素,过滤系统自动给元素添加*-transition的class名,在插入和移除时添加了另外两个糊锅:*-enter和*-leave 2.Vue.js提供了在插入或 ,enterClass属性和leaveClass属性 4.Vue.js官方推荐CSS动画库,animate.css,需要先给元素附上animated名,然后再添加预设的动效名 B.JavaScript <slot>标签允许有一个匿名slot,不需要name值,作为找不到匹配的内容片段的回退插槽,如果没有默认的slot,这些找不到匹配的内容片段将被忽略 4.在组件中,也可以定义多个相同slot属性的DOM

    3.4K20发布于 2019-08-06
  • 来自专栏IT技能应用

    Spring认证-Spring 安全架构专题教程

    通常,这些中的每一个都是一个ProviderManager,并且它们共享一个级。级是一种“全局”资源,充当所有提供者的后备。 授权或访问控制 一旦认证成功,我们就可以进行授权,这里的核心策略是AccessDecisionManager。 Spring Security 过滤器包含一个过滤器链列表,并将请求分派到匹配它的第一个链。下图显示了基于匹配请求路径(/foo/**匹配之前/**)发生的调度。 每组资源都有自己WebSecurityConfigurerAdapter的唯一顺序和自己的请求匹配器。如果匹配规则重叠,则最早排序的过滤器链获胜。 一个是整个过滤器链的请求匹配器,另一个是只选择要应用的访问规则。

    1.1K20发布于 2021-09-02
  • 来自专栏IT技能应用

    「Spring」认证安全架构指南

    如果级不可用,则null Authentication结果为AuthenticationException.有时,应用程序具有受保护资源的逻辑组(例如,与路径模式匹配的所有 Web 资源,例如/api 如果您进行任何构建AuthenticationManager.授权或访问控制一旦认证成功,我们就可以继续进行授权,这里的核心策略是AccessDecisionManager. Spring Security 过滤器包含一个过滤器链列表,并将请求分派到与其匹配的第一个链。下图显示了基于匹配请求路径(/foo/**匹配之前/**)发生的调度。这很常见,但不是匹配请求的唯一方法。 每组资源都有自己WebSecurityConfigurerAdapter的唯一顺序和自己的请求匹配器。如果匹配规则重叠,则最早排序的过滤器链获胜。 一种是整个过滤器链的请求匹配器,另一种只是选择要应用的访问规则。

    1.4K30编辑于 2022-06-27
  • 来自专栏大前端(横向跨端 & 纵向全栈)

    JQuery常用命令

    元素克隆 ①. element.cloneNode() (10). 总结:核心 DOM 操作的问题 ①. 方法名普遍比较长 ②. 操作比较僵硬 ③. 方法存在浏览器兼容性 3. 基本过滤选择器 — 重点 基本过滤选择器把所有满足选中的元素放在一个大集合中进行排序,不论是否在同一个元素中与否,下标从 0 开始 (1). :first 第一个 (2). 子元素过滤选择器 — 重点  在每个元素中进行分组,查找指定的子元素,下标从 1 开始 (1). :first-child 第一个子元素 语法: $('li:first-child'); (2). 内容过滤选择器 (1). :contains(txt) 文本中包含“txt”字的元素 (2). :has(selector) 包含选择器所匹配的元素的元素 (3). 核心 DOM ①. ul.removeChild( li ) 由元素删除孩子 (2). JQuery ①.

    7.5K10发布于 2020-11-26
  • 来自专栏全栈程序员必看

    C++日志系统log4cxx使用总结[通俗易懂]

    一、log4cxx命名规则 Logger由一个String的名字识别,logger的名字是大小写敏感的,且名字之间具有继承的关系,子名有名作为前缀,用点号.分隔。 月18日 22:10:28,921 %l 输出日志事件的发生位置,包括类目名 、发生的线程,以及在代码中的行数。 之间同时AcceptOnMatch为true时才会匹配。 值与相同, 且AcceptOnMatch为true时会匹配。 具体说,默认情况下子Logger会继承Logger的appender,也就是说子Logger会在Logger的appender里输 出。

    2.1K30编辑于 2022-07-05
  • 领券