当前位置: 首页 > news >正文

人生第一次面试之依托答辩

今天收到人生的第一场面试,是东华软件集团。答的那是依托答辩,就面了20分钟,还没考算法。其实依托答辩的效果是意料之中的,这次面试也只是想练练手。

目录

静态变量什么时候加载的?

重写和重载有什么区别?

如何优化sql?

索引过多会怎样?

not in可以用什么代替?

讲一下ArrayList和LinkedList?

讲一下hashmap和treemap?

SpringBoot核心注解?

微服务中gateway的作用?

讲讲mysql中的分页查询?

linux查看进程命令

linux查看日志命令:

对未来有什么规划?

期望实习薪资多少?


自我介绍

“从大一开始学习Java,一路学习Java基础,javaweb,ssm,springboot,springcloud,包括相关中间件,了解设计模式,大三开始准备考研,刚考完研准备找份实习”

静态变量什么时候加载的?

这题没见过,真不会,一下子就慌了,就随便说了句类加载的时候吗?她一听立马换下一道题了。

正确答案:

     Java中的静态变量在类加载阶段被初始化。当Java虚拟机(JVM)加载类时,它会执行类的初始化过程,它包括为静态变量分配内存并赋予默认值或者显示指定的初始值。具体来说,以下事件发生时静态变量会被加载:

    1.首次主动使用类:当程序首次通过以下方式之一访问某个类时,会触发该类的初始化,从而加载静态变量:

     -创建类的实例(即new一个对象)

     -访问类的静态或静态字段

     -使用反射来访问类中的任何成员

     -初始化该类的子类(这会导致父类也被初始化)

     -将该类作为参数传递给java.lang.invoke.Methodhandle.Lookup的查找方法

    -调用某些反射方法,比如Class.forName()加载类时,如果没有指定ClassLoder且该类还未初始化。

   2.静态内部类的加载: 如果静态变量位于静态内部类中,那么这个静态内部类会在其首次引用时加载,即使外部类之前已经加载过。

      静态变量的加载和初始化发生在类的构造器方法中,该方法是由编译器根据类中的静态变量赋值语句和静态代码块自动生成的。这个过程保证了静态变量在类的任何实例(对象)创建之前就已经准备就绪,并且静态变量方法只被初始化一次。

    总结来说,静态变量的加载时机与类的初始化时机紧密相关,是在首次被JVM主动使用时完成的。

重写和重载有什么区别?

我心想坏了,这肯定是刚才答得不好,开始瞧不起我了,大一就知道的题都问出来了。

“重写就是对原来的方法直接重新写过,比如toSrting()方法,本来原来是有一个方法体的,重写之后就会按照你重写的方法进行string格式的编写,重载是通过修改参数的类型和个数以及返回值类型来创建一个同名的方法”,她反问“返回值类型不同也是重载吗”,我答“是啊”。

犯了根本错误:返回值类型不同不是重载!

正确答案:

       方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性。重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同或者二者都不同)则视为重载;重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的参数列表,有兼容的返回类型,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常(里氏代换原则)。重载对返回类型没有特殊的要求,不能根据返回类型进行区分。

如何优化sql?

  这道题见过很多次,但是记不起来了。“避免使用联表查询,对于经常使用的列可以建立索引,emm...暂时只能想到这些”

正确答案:

(1)表设计优化

          1.比如设置合适的数值(tinyint int bigint),要根据实际情况选择

          2.比如设置合适的字符串(char和varchar)char定长效率高,varchar可变长度,效率稍低

(2)SQL语句的优化

           1.select语句务必指明字段名称(避免使用select *)

           2.SQL语句要避免造成索引失效的写法

           3.尽量使用union all代替union union会多一次过滤,效率低

            4.避免在where子句中对字段进行表达式操作

             5.jion优化 能用innerjoin就不用left join right join,如果必须使用一定要以小表为驱动,内                    连接会对两个表进行优化,优先把小表放外边,大表放里边。left join或right join不会重                   新调整顺序

索引过多会怎样?

不知道,又是乱说了一句“会导致回表查询效率变慢”

正确答案:

1. 写操作性能下降
插入(INSERT)、更新(UPDATE)、删除(DELETE)等写操作会因为索引的增多而变得更为耗时,因为每次写操作都需要同步更新索引,特别是在频繁写操作的情况下。

2. 存储空间占用增加
每个索引都需要占用一定的存储空间,当索引过多时,会占用大量的存储空间,增加数据库的整体存储需求。

3. 查询性能下降
虽然索引可以加速查询操作,但过多的索引可能会导致索引的失效,使得数据库优化器很难选择到最合适的索引,从而导致查询性能下降。此外,索引过多也可能导致索引之间相互竞争,加剧查询性能下降。

4. 索引维护成本增加
随着索引数量的增加,数据库的索引维护成本也会相应增加。维护成本包括索引的创建、更新、重建和删除等操作,可能需要消耗较多的系统资源和时间。

5. 索引选择困难
当存在大量的索引时,数据库优化器在选择最佳的索引时可能会变得更加困难,这可能导致查询执行计划的选择不够有效,进而影响查询性能。

因此,合理地设计和维护索引对于数据库的性能是非常重要的,应尽量避免过多的索引,而是根据实际的查询需求和数据访问模式选择合适的索引来优化数据库性能。

not in可以用什么代替?

“不知道”

正确答案:

1.使用 LEFT JOIN 和 IS NULL

第一种替代方案是使用 LEFT JOIN 和 IS NULL。我们可以通过将要排除的值列表作为另一张表的数据,然后通过 LEFT JOIN 操作将两张表连接起来,最后使用 IS NULL 来获取不在列表中的值。

SELECT employee.id, employee.name
FROM employee
LEFT JOIN terminated_employee
ON employee.id = terminated_employee.id
WHERE terminated_employee.id IS NULL;

2.使用 NOT EXISTS

NOT EXISTS 是一种条件表达式,用于判断一个子查询的结果是否为空。我们可以使用 NOT EXISTS 来排除某个表中的一组值。

SELECT *
FROM orders o
WHERE NOT EXISTS (SELECT *FROM excluded_products eWHERE o.product_id = e.product_id
);

3.使用 LEFT JOIN 和 CASE WHEN

第三种替代方案是使用 LEFT JOIN 和 CASE WHEN。我们可以通过将要排除的值列表作为另一张表的数据,然后通过 LEFT JOIN 操作将两张表连接起来,最后使用 CASE WHEN 来判断列表中的值是否为空,进而实现排除的效果。

讲一下ArrayList和LinkedList?

终于到一道会的题了,“Arraylist底层是动态数组,LinkedList底层是双向链表,所以ArrayList可以用下标访问,而LinkedList不能用下标访问,查询时间复杂度为O(n),但ArrayList的删除和添加需要移动元素,时间复杂度为O(n),LinkedList只用改指针效率更高,所以经常访问的数据适合用ArrayList经常删除和添加的数据适合用LinkedList,他们都是线程不安全的"

这道题正确答案和这差不多

讲一下hashmap和treemap?

hashmap知道,treemap不知道。“hashmap底层是数组加链表,当链表长度大于8且数组长度大于64是链表会变成红黑树,treepmap底层是数组加树(treemap完全乱说的)”

正确答案:

1.相同点
首先,它们都是Java集合框架中的重要成员,都实现了Map接口,因此具有Map接口的基本功能,如存储键值对、根据键查找值等。

其次,它们都能够存储null键和null值(尽管在实际应用中,HashMap对null键和null值的处理更为宽松,而TreeMap则会在某些情况下抛出异常)。

最后,它们都是线程不安全的,如果在多线程环境下使用,需要额外的同步措施来保证线程安全。

2.不同点

(1)存储结构:
HashMap采用了哈希表的结构,通过哈希函数将键映射到表中的某个位置。这种结构使得HashMap在查找、插入和删除操作上都有着极高的效率,但同时也意味着它无法保持数据的有序性。而TreeMap则采用了红黑树的结构,通过比较器对键进行排序。这种结构使得TreeMap在保持数据有序性的同时,也能够在一定程度上保证查找、插入和删除操作的效率。

(2)时间复杂度:
HashMap的查找、插入和删除操作的时间复杂度都是O(1)(在理想情况下,即哈希函数分布均匀且没有哈希冲突时)。然而,在实际应用中,由于哈希冲突和链表或红黑树转换的影响,这些操作的时间复杂度可能会上升到O(n)。相比之下,TreeMap的查找、插入和删除操作的时间复杂度都是O(log n),因为它需要维护红黑树的平衡性。

(3)有序性:
正如前面所说,HashMap是无序的,它无法根据键的自然顺序或自定义比较器对键值对进行排序。而TreeMap则是有序的,它可以根据键的自然顺序或自定义比较器对键值对进行排序。这种有序性使得TreeMap在需要保持数据有序性的场合中更加适用。

SpringBoot核心注解?

没听过springboot核心注解,讲了一些常见的注解什么controller,mappaing,congfiguration,autowired,value等等

正确答案:

1.@SpringBootConfiguration
声明为配置类(根配置类,首先扫描该类,本身是一个IOC容器的配置类),将当前类内声明的一个或多个以@Bean注解标记的方法的实例纳入到spring容器中,并且实例名就是方法名。
SpringBoot使用Java Config技术进行配置,Java Config使用注解和Java代码的方式代替xml配置文件

  • 任何一个标注了@Configuration的Java类定义都是一个JavaConfig配置类。
  • 任何一个标注了@Bean的方法,其返回值将作为一个bean定义注册到Spring的IoC容器,方法名将默认成该bean定义的id

2.@ComponentScan

自动扫描当前包及子包下被@Component,@Controller,@Service,@Repository注解标记的类,将其作为bean加载到IOC容器中。
不指定范围则默认从注解所在类的包下进行扫描。

3.@EnableAutoConfiguration

核心注解,是自动配置的入口,SpringBoot根据添加的jar包来进行项目的默认配置

微服务中gateway的作用?

“将不同请求转发到对应的微服务上“

正确答案:

1.路由转发

在spring cloud gateway中我们可以自定义路由,将请求根据不同的路径或条件转到相应的下游服务中去。这对整个微服务架构中的服务管理来说非常简单、高效。

2.负载均衡
因为网关是做路由转发的,所以在网关中可以很方便的实现负载均衡。Spring Cloud官方默认的是采用spring-cloud-loadbalancer组件,如上面的代码中uri: lb://customer-service, 就是采用默认的负载均衡算法,请求到customer-service集群。

3.统一鉴权
在gateway中我们可以集成spring security和JWT等安全框架,进行统一的登录和鉴权。在网关中任何一个请求,我们都会先判断当前请求的用户是否已经登录,如果没有登录则会路由到登录页面进行登录,如果已经登录了则会继续鉴权,判断当前用户是否有访问该接口的权限,如果鉴权成功则会将请求路由给对应的服务进行处理。

4.流量的过滤
就像之前的统一鉴权一样,我们也可以基于网关做一些流量的过滤,比如一些恶意流量的过滤、黑名单的过滤。

5.限流降级
在网关中我们还可以做限流降级,目前官方推荐我们使用resilience4j组件来进行限流。这样我们就可以在网关层面进行流量的统一管控,从而避免大量的流量压垮我们的服务集群。

6.解决跨域的问题
在微服务架构中,我们的服务通常都会分布在不同的域中。Spring Cloud Gateway提供了跨越请求支持,使得不同域中的服务可以进行安全的通讯。

spring cloud gateway就是一个流量的统一入口,所以它能做很多事情,如路由转发、负载均衡、统一鉴权和限流等保护服务的机制。

但是,另外一方面作为所有流量的入口,网关会处理大量的请求,容易成为我们系统的瓶颈。所以,我们需要对资源进行合理的分配,做好网关应用的监控,如发现异常需及时进行处理。

讲讲mysql中的分页查询?

“利用limit关键字,要传两个参数,一个是每页的数据条数,总的数据条数,底层不太了解”

大错特错!

正确答案:

select * from table order by id limit m, n;

查询m+n条记录,去掉前m条,返回后n条。无疑该查询能够实现分页,但m越大,查询性能就越低,因为MySQL需要扫描全部m+n条记录。

SELECT * FROM table_name ORDER BY id LIMIT 10 OFFSET 1000;

查询返回从第1001条记录开始的10条记录。这种方法在数据量小或中等时效果良好,但在数据量非常大的情况下,性能会显著下降。

linux查看进程命令

“不知道”

正确答案:

1.静态查看进程

ps aux #查看进程使用情况
ps aux | less # 查看进程使用情况,考虑到显示过多,使用分管符和less命令查看
ps aux --sort CPU #查看进程使用情况,并按照CPU的使用率升序排列
ps aux --sort -CPU #查看进程使用情况,并按照CPU的使用率降序排列
ps aux --sort rss #查看进程使用情况,并按照内存的使用升序排列
ps aux --sort -rss  #查看进程使用情况,并按照内存的使用降序排列
ps -ef | grep XXX #查看指定的进程是否开启
ps axo user,pid,ppid……  #查看进程,并且只查看后面列举出的信息

2.动态查看进程

top命令可以动态查看进程,top命令常用参数如下:
-d 表示刷新的时间间隔,单位为s
-p 表示查看指定PID的进程
-u 表示查看指定用户的进程
-n 表示top刷新指定次数后退出

top -d 1
top -p 100
top -n 3 >123.txt
top -u nginx

linux查看日志命令:

“不知道,linux命令这块实在不太了解”

正确答案:

1tail

tail -n 10 test.log 查询日志尾部最后10行的日志;
tail -n +10 test.log 查询10行之后的所有日志;
tail -fn 10 test.log 循环实时查看最后1000行记录(最常用的)
tail -fn 1000 test.log | grep '关键字'
tail -n 4700 aa.log |more -1000 可以进行多屏显示(ctrl + f 或者 空格键可以快捷键)

 2、less

less log.log
shift + G 命令到文件尾部 然后输入 ?加上你要搜索的关键字例如 ?1213
按 n 向上查找关键字
shift+n 反向查找关键字
less与more类似,使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且 less 在查
看之前不会加载整个文件。
less log2013.log 查看文件
ps -ef | less ps查看进程信息并通过less分页显示
history | less 查看命令历史使用记录并通过less分页显示
less log2013.log log2014.log 浏览多个文件

参数:

less与more类似,使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且 less 在查
看之前不会加载整个文件。
less log2013.log 查看文件
ps -ef | less ps查看进程信息并通过less分页显示
history | less 查看命令历史使用记录并通过less分页显示
less log2013.log log2014.log 浏览多个文件
常用命令参数:
-b <缓冲区大小> 设置缓冲区的大小
-g 只标志最后搜索的关键词
-i 忽略搜索时的大小写
-m 显示类似more命令的百分比
-N 显示每行的行号
-o <文件名> 将less 输出的内容在指定文件中保存起来
-Q 不使用警告音
-s 显示连续空行为一行
/字符串:向下搜索"字符串"的功能
?字符串:向上搜索"字符串"的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
b 向后翻一页
h 显示帮助界面
q 退出less 命令

3.vi

vi test.log 
命令模式下敲斜杆( / ) 
屏幕右下角出现了 "/" 
然后输入你要查找的关键字敲回车就可以了。 
如果你要继续查找此关键字,敲字符 n 就可以继续查找了。
敲字符N(大写N)就会向前查询;如何退出查询:
按住 Esc 然后 :q!  

对未来有什么规划?

 “赶紧找个实习,后面好找工作”

期望实习薪资多少?

“只要能活就行,2千3千都行”

”面试结束“。“啊,不考道算法吗”。“不用了,一周之内面试通过会给你打电话”,“好的,谢谢,这是我第一次面试,我知道效果不好,这也意料之中,感谢您和您公司给我一次面试的机会,谢谢。”“好的,再见”。

相关文章:

人生第一次面试之依托答辩

今天收到人生的第一场面试&#xff0c;是东华软件集团。答的那是依托答辩&#xff0c;就面了20分钟&#xff0c;还没考算法。其实依托答辩的效果是意料之中的&#xff0c;这次面试也只是想练练手。 目录 静态变量什么时候加载的&#xff1f; 重写和重载有什么区别&#xff1…...

STM32 : PWM 基本结构

这张图展示了PWM&#xff08;脉冲宽度调制&#xff09;的基本结构和工作流程。PWM是一种用于控制功率转换器输出电压的技术&#xff0c;通过调整信号的占空比来实现对负载的精确控制。以下是详细讲解&#xff1a; PWM 基本结构 1. 时基单元 ARR (Auto-reload register): 自动…...

【大模型(LLM)面试全解】深度解析 Layer Normalization 的原理、变体及实际应用

系列文章目录 大模型&#xff08;LLMs&#xff09;基础面 01-大模型&#xff08;LLM&#xff09;面试全解&#xff1a;主流架构、训练目标、涌现能力全面解析 02-【大模型&#xff08;LLM&#xff09;面试全解】深度解析 Layer Normalization 的原理、变体及实际应用 大模型&…...

《浮岛风云》V1.0中文学习版

《浮岛风云》中文版https://pan.xunlei.com/s/VODadt0vSGdbrVOBEsW9Xx8iA1?pwdy7c3# 一款有着类似暗黑破坏神的战斗系统、类似最终幻想的奇幻世界和100%可破坏体素环境的动作冒险RPG。...

学习threejs,导入babylon格式的模型

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.1 ☘️THREE.BabylonLoader babyl…...

Django 社团管理系统的设计与实现

标题:Django 社团管理系统的设计与实现 内容:1.摘要 本文介绍了 Django 社团管理系统的设计与实现。通过分析社团管理的需求&#xff0c;设计了系统的架构和功能模块&#xff0c;并使用 Django 框架进行了实现。系统包括社团信息管理、成员管理、活动管理、财务管理等功能&…...

2025 GitCode 开发者冬日嘉年华:AI 与开源的深度交融之旅

在科技的浪潮中&#xff0c;AI 技术与开源探索的火花不断碰撞&#xff0c;催生出无限可能。2025 年 1 月 4 日&#xff0c;由 GitCode 联合 CSDN COC 城市开发者社区精心打造的开年首场开发者活动&#xff1a;冬日嘉年华在北京中关村 • 鼎好 DH3-A 座 22 层盛大举行&#xff0…...

嵌入式系统 tensorflow

&#x1f3ac; 秋野酱&#xff1a;《个人主页》 &#x1f525; 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 探索嵌入式系统中的 TensorFlow&#xff1a;机遇与挑战一、TensorFlow 适配嵌入式的优势二、面临的硬件瓶颈三、软件优化策略四、实…...

Web无障碍

文章目录 &#x1f7e2;Web Accessibility-Web无障碍&#x1f7e2;一、Web Accessibility-Web1. web无障碍设计2. demo3.使用相关相关开源无障碍工具条(调用可能会根据网络有点慢) 如有其他更好方案&#xff0c;可以私信我哦✒️总结 &#x1f7e2;Web Accessibility-Web无障碍…...

Qt使用MySQL数据库(Win)----2.配置MySQL驱动

使用Everything软件&#xff0c;找到mysql.pro文件。并使用qt creator打开mysql.pro。 导入外部库 选择外部库 点击下一步&#xff0c;勾选。 为debug版本添加‘d’作为后缀取消勾选&#xff0c;然后点击下一步 添加后的Pro文件。 这样文件应该是改好了&#xff0c;选择releas…...

记录一下vue2项目优化,虚拟列表vue-virtual-scroll-list处理10万条数据

文章目录 封装BrandPickerVirtual.vue组件页面使用组件属性 select下拉接口一次性返回10万条数据&#xff0c;页面卡死&#xff0c;如何优化&#xff1f;&#xff1f;这里使用 分页 虚拟列表&#xff08;vue-virtual-scroll-list&#xff09;&#xff0c;去模拟一个下拉的内容…...

java 中 main 方法使用 KafkaConsumer 拉取 kafka 消息如何禁止输出 debug 日志

pom 依赖&#xff1a; <dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId><version>2.5.14.RELEASE</version> </dependency> 或者 <dependency><groupId>org.ap…...

前端性能优化全攻略:加速网页加载,提升用户体验

前端性能优化全攻略&#xff1a;加速网页加载&#xff0c;提升用户体验 在当今互联网时代&#xff0c;用户对于网页的加载速度和性能要求越来越高。一个快速响应、流畅加载的网页能够极大地提升用户体验&#xff0c;增加用户留存率和满意度。前端性能优化是实现这一目标的关键…...

关于内网外网,ABC类地址,子网掩码划分

本文的三个关键字是&#xff1a;内网外网&#xff0c;ABC类地址&#xff0c;子网掩码划分。围绕以下问题展开&#xff1a; 如何从ip区分外网、内网&#xff1f;win和linux系统中&#xff0c;如何查询自己的内网ip和外网ip。开发视角看内外网更多是处于安全考虑&#xff0c;接口…...

【C++多线程编程:六种锁】

目录 普通互斥锁&#xff1a; 轻量级锁 独占锁&#xff1a; std::lock_guard&#xff1a; std::unique_lock: 共享锁&#xff1a; 超时的互斥锁 递归锁 普通互斥锁&#xff1a; std::mutex确保任意时刻只有一个线程可以访问共享资源&#xff0c;在多线程中常用于保…...

【LeetCode】力扣刷题热题100道(16-20题)附源码 容器 子数组 数组 连续序列 三数之和(C++)

目录 1.盛最多水的容器 2.和为K的子数组 3.最大子数组和 4.最长连续序列 5.三数之和 1.盛最多水的容器 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴…...

WHAT - devicePixelRatio 与像素分辨率

目录 语法理解 devicePixelRatio常见值应用场景注意事项在高分辨率屏幕下的视觉效果 devicePixelRatio 是一个浏览器属性&#xff0c;用来表示设备的物理像素与 CSS 像素之间的比例。它是屏幕显示清晰度的重要指标&#xff0c;特别是在高分辨率屏幕&#xff08;如 Retina 显示屏…...

【cs.CV】25.1.8 arxiv更新速递

—第1篇---- ===== ConceptMaster: 面向扩散Transformer模型的多概念视频定制,无需测试时调优 🔍 关键词: 文本到视频生成, 扩散模型, 多概念定制, 身份解耦 链接1 摘要: 文本到视频生成通过扩散模型取得了显著进展。然而,多概念视频定制(MCVC)仍然是一个重大挑战。…...

C#使用MVC框架创建WebApi服务接口

第一步,使用VS2019新建MVC-Web API应用程序 创建BridgeApi 第二步,运行将生成默认的示例网页,网页Url为 https://localhost:44361/home/index 右键 项目 添加 WebAPI控制器类 添加 我们可以看到App_Start目录下 有三个文件: BundleConfig.cs代表 捆绑文件的引用 有脚本文件…...

慧集通(DataLinkX)iPaaS集成平台-智能体(Agent)API

功能简介&#xff1a; 该功能下主要是用来管理集成平台对外开放接口得管控以及调用日志信息得查看操作&#xff0c;并支持日志得重放等操作&#xff1b;注&#xff1a;所有触发类单据得日志也可以在此查看(如使用数据触发组件自动触发流程得日志信息) 1.第三方调用接口类日志查…...

BigDecimal:高精度数值运算类

介绍&#xff1a; BigDecimal是一个用于高精度数值运算的类&#xff0c;它比基本的double或float类型更精确&#xff0c;非常适合需要精确计算的场景&#xff0c;如金融计算、科学计算等&#xff0c;因为这些领域对数值精度要求非常高&#xff0c;不能容忍浮点运算带来的误差。…...

11. C 语言 作用域与变量使用技巧

本章目录: 前言一、作用域的分类局部变量示例&#xff1a; 全局变量示例&#xff1a;示例&#xff1a; 形式参数示例&#xff1a; 二、作用域的细节与常见误区块级作用域示例&#xff1a; 静态变量与全局变量的对比示例&#xff1a; 未初始化变量的影响示例&#xff1a; 三、实…...

大模型WebUI:Gradio全解11——Chatbots:融合大模型的多模态聊天机器人(2)

大模型WebUI&#xff1a;Gradio全解11——Chatbots&#xff1a;融合大模型的聊天机器人&#xff08;2&#xff09; 前言本篇摘要11. Chatbot&#xff1a;融合大模型的多模态聊天机器人11.2 使用流行的LLM库和API11.2.1 Llama Index11.2.2 LangChain11.2.3 OpenAI1. 基本用法2. …...

课题推荐——基于GPS的无人机自主着陆系统设计

关于“基于GPS的无人机自主着陆系统设计”的详细展开&#xff0c;包括项目背景、具体内容、实施步骤和创新点。如需帮助&#xff0c;或有导航、定位滤波相关的代码定制需求&#xff0c;请点击文末卡片联系作者 文章目录 项目背景具体内容实施步骤相关例程MATLAB例程python例程 …...

HQChart使用教程30-K线图如何对接第3方数据44-DRAWPIE数据结构

HQChart使用教程30-K线图如何对接第3方数据44-DRAWPIE数据结构 效果图DRAWPIEHQChart代码地址后台数据对接说明示例数据数据结构说明效果图 DRAWPIE DRAWPIE是hqchart插件独有的绘制饼图函数,可以通过麦语法脚本来绘制一个简单的饼图数据。 饼图显示的位置固定在右上角。 下…...

张朝阳惊现CES展,为中国品牌 “代言”的同时,或将布局搜狐新战略!

每年年初&#xff0c;科技圈的目光都会聚焦在美国拉斯维加斯&#xff0c;因为这里将上演一场被誉为 “科技春晚” 的年度大戏 ——CES 国际消费电子展。作为全球规模最大、最具影响力的科技展会之一&#xff0c;CES 吸引了来自 160 多个国家的创新者和行业领导者&#xff0c;是…...

堆排序+选择排序详解

目录 1.选择排序的定义 2.选择排序的优缺点 2.1优点 2.2缺点 3.思考 4.优化后的选择排序的实现 5.选择排序的代码 6.堆排序 7.向上/向下调整算法 8. 向下向上调整代码 9.堆排序代码 1.选择排序的定义 选择排序(SelectSort)&#xff0c;以第一个为开始值&#xff0c…...

【Arthas命令实践】heapdump实现原理

&#x1f3ae; 作者主页&#xff1a;点击 &#x1f381; 完整专栏和代码&#xff1a;点击 &#x1f3e1; 博客主页&#xff1a;点击 文章目录 使用原理 使用 dump java heap, 类似 jmap 命令的 heap dump 功能。 【dump 到指定文件】 heapdump arthas-output/dump.hprof【只 …...

python-leetcode-判断子序列

392. 判断子序列 - 力扣&#xff08;LeetCode&#xff09; class Solution:def isSubsequence(self, s: str, t: str) -> bool:i, j 0, 0 # i 指向 s&#xff0c;j 指向 twhile i < len(s) and j < len(t):if s[i] t[j]:i 1j 1return i len(s)...

【Verdi实用技巧-Part2】

Verdi实用技巧-Part2 2 Verdi实用技巧-Part22.1 Dump波形常用的task2.1.1 Frequently Used Dump Tasks2.1.2 Demo 2.2 提取波形信息小工具--FSDB Utilities2.3 Debug in Source code view2.3.1 Find Scopes By Find Scope form 2.3.2 Go to line in Souce code View2.3.3 Use B…...

常用的AT命令,用于查看不同类型的网络信息

文章目录 1. ATCSQ‌&#xff1a;2. ATCREG‌&#xff1a;‌3. ATCOPS‌&#xff1a;4. ATCGATT‌&#xff1a;5. ATCGPADDR‌&#xff1a; 在AT命令集中&#xff0c;用于查看网络信息的命令有多种&#xff0c;具体取决于所使用的设备和模块。以下是一些常用的AT命令&#xff0…...

【应用篇】09.实现简易的Shell命令行解释器

一、shell和bash的关系 shell是命令解释器&#xff0c;它接收用户的命令并将其传递给内核去执行。bash,即GNU Bourne-Again Shell&#xff0c;是shell的一种实现方式&#xff0c;也是大多数linux系统下默认的shell。 bash的原理 大多数的指令进程&#xff08;除了内建命令&…...

负载均衡技术【内网去外网运营商出口负载均衡】

1 负载均衡概述 LB&#xff08;Load Balance&#xff0c;负载均衡&#xff09;是一种集群技术&#xff0c;它将特定的业务&#xff08;网络服务、网络流量等&#xff09;分担给多台网络设备&#xff08;包括服务器、防火墙等&#xff09;或多条链路&#xff0c;从而提高了业务…...

【广西乡镇界】arcgis格式shp数据乡镇名称和编码2020年内容测评

【广西乡镇界】arcgis格式shp数据乡镇名称和编码2020年内容测评...

半导体数据分析: 玩转WM-811K Wafermap 数据集(一) AI 机器学习

在半导体行业&#xff0c;工程师依靠 CP Yield&#xff08;生产过程中芯片的合格率&#xff09;、WAT&#xff08;晶圆验收测试&#xff09;和 Particle 的晶圆图模式来识别工艺问题。然而&#xff0c;在没有人工干预的情况下将这些晶圆图模式分类是一项重大挑战。许多论文都研…...

mongodb安装并设置用户验证登录

下载地址 https://www.mongodb.com/try/download/community-kubernetes-operator 偶数版是稳定版&#xff0c;基数版是开发版 &#xff0c;对32位支持不好 --------------------------------CentOS下安装mongodb--------------------------------------------------- 解压安装包…...

《零基础Go语言算法实战》【题目 1-16】字符串的遍历与比较

《零基础Go语言算法实战》 【题目 1-16】字符串的遍历与比较 给出两个字符串&#xff0c;请编写程序以确定能否将其中一个字符串重新排列后变成另一个字符串&#xff0c; 并规定大小写是不同的字符&#xff0c;空格也作为字符考虑。保证两个字符串的长度小于或等于 5000。 …...

VUE3封装一个Hook

在 Vue 3 中&#xff0c;Composition API 让我们能够封装和复用代码逻辑&#xff0c;尤其是通过 setup 函数进行组件间的复用。为了提高代码的可复用性&#xff0c;我们可以把一些常见的 API 请求和状态管理逻辑封装到一个单独的 hook 中。 以下是一个简单的例子&#xff0c;我…...

【Linux】Linux常见指令(上)

个人主页~ 初识Linux 一、Linux基本命令1、ls指令2、pwd命令3、cd指令4、touch指令5、mkdir指令6、rmdir指令7、rm指令8、man指令9、cp指令10、mv命令 Linux是一个开源的、稳定的、安全的、灵活的操作系统&#xff0c;Linux下的操作都是通过指令来实现的 一、Linux基本命令 先…...

嵌入式 C 语言:一维数组

目录 一、定义 二、内存布局 三、数组的初始化 3.1. 完全初始化 3.2. 部分初始化 3.3. 不指定大小初始化 四、使用数组 4.1. 访问数组元素 4.1.1. 通过索引访问数组元素 4.1.2. 通过指针访问数组元素 4.2. 遍历数组 4.3. 数组作为函数参数 五、应用场景 5.1. 数据…...

NineData云原生智能数据管理平台新功能发布|2024年12月版

本月发布 7 项更新&#xff0c;其中重点发布 2 项、功能优化 5 项。 重点发布 数据库 Devops - Oracle 非表对象支持可视化创建与管理 Oracle 非表对象&#xff0c;包括视图&#xff08;View&#xff09;、包&#xff08;Package&#xff09;、存储过程&#xff08;Procedur…...

iOS - 自旋锁

在 Objective-C 运行时中大量使用自旋锁&#xff0c;主要有以下几个原因&#xff1a; 1. 性能考虑 上下文切换成本 // 自旋锁实现 static ALWAYS_INLINE void OSSpinLockLock(volatile OSSpinLock *lock) {do {while (lock->value ! 0) {__asm__ volatile ("pause&q…...

域名备案页面模板

域名备案模板&#xff0c;首页底下正中央位置需要有备案号。 主要是给不太擅长于前端样式的人提供一个备案模板&#xff0c;直接把这个H5放到nginx的index.html就可以访问了 <html><body><div class"login-container"><h2>登录</h2>&…...

【socketioxide和axum集成-实现websocket实时通信-Rust点滴】

socketioxide的axum集成 启动socketio依靠examle里的layer一. 使用可变State依靠axum里的example二.提取client,IP1. 非代理,tcp,socket对方地址2.代理情况下socket.req_parts. 三. axum的handle中使用emit发送消息.1. io,存入State解决.2.把io存入初始设定作为唯一单例3.http-…...

计算机网络(第8版)第3章--PPP课后习题

【3-09】 一 个PPP 帧的数据部分(用十六进制写出)是7 D 5EFE 277D 5D7D 5D657D 5E。 试问真正的数据是什么(用十六进制写出)? 解答&#xff1a;把由转义符7D开始的2字节序列用下画线标出&#xff1a; 7D 5E FE 27 7D 5D 7D 5D 65 7D 5E 7D 5E应当还原成为7E。 7D5D 应…...

通过Android Studio修改第三方jar包并重新生成jar包

最近接手了来自公司其他同事的一个Unity项目,里面有一个封装的jar包要改动一下,无奈关于这个jar包的原工程文件丢失了,于是自己动手来修改下jar包,并做下记录。 一、导入第三方jar包 1、新建项目EditJarDemo(项目名随便取) 2、新建libs文件夹,把你要修改的third.jar 复制…...

Rabbitmq 业务异常与未手动确认场景及解决方案

消费端消费异常&#xff0c;业务异常 与 未手动确认是不是一个场景&#xff0c;因为执行完业务逻辑&#xff0c;再确认。解决方案就一个&#xff0c;就是重试一定次数&#xff0c;然后加入死信队列。还有就是消费重新放入队列&#xff0c;然后重新投递给其他消费者&#xff0c;…...

3D机器视觉的类型、应用和未来趋势

3D相机正在推动机器视觉市场的增长。很多制造企业开始转向自动化3D料箱拣选&#xff0c;专注于使用3D视觉和人工智能等先进技术来简化操作并减少开支。 预计3D相机将在未来五年内推动全球机器视觉市场&#xff0c;这得益于移动机器人和机器人拣选的强劲增长。到 2028 年&#…...

LabVIEW在反馈控制时如何解决带约束的控制问题

在LabVIEW中&#xff0c;解决带约束的反馈控制问题通常需要使用先进的控制算法或特定的方法来满足约束条件&#xff0c;同时保证控制系统的性能和稳定性。以下是解决这类问题的一些常用方法和步骤&#xff1a; ​ 1. 定义控制问题及约束条件 确定被控对象的动态特性&#xff08…...

PHP 在 2025 年的现状与展望

PHP 在 2025 年依然强劲&#xff0c;继续为超过 77% 使用已知服务器端编程语言的网站提供动力。这并非仅仅依靠遗留代码&#xff0c;像 WordPress、Shopify 和 Laravel 这样的主流平台持续推动 PHP 的发展&#xff0c;使其保持着 актуальность 并不断进化。 为什么…...