- 博客(16)
- 收藏
- 关注
原创 重载与重写有什么区别?
2.被重写方法throws编译时异常类型,重写方法throws的编译时异常类型必须<=被重写方法throws编译时异常类型。调用父类的静态方法可以通过“父类名.静态方法”,也可以通过“子类名静态方法”。1.被重写方法没有throws编译时异常类型,重写方法不能throws编译时异常类型。2.引用数据类型:重写方法的返回值类型要满足<=重写方法的返回值类型。问:私有方法能被重载或重写吗?私有方法可以重载,但是不能重写。问:构造器可以被重载和重写吗?2.重写方法的权限修饰符要满足>=被重写方法的权限修饰符。
2025-04-26 16:12:59
227
原创 public、 protected、 缺省、private的区别?
(1) 从事物特征以及内存分配角度来说,会继承,即创建子类对象时,子类对象中包含父类以及本类声明的所有实例变量,无论它们是不是private修饰的。(2)从可访问性角度来说,不会继承,即子类不能直接访问父类私有的成员,这一点也是封装性的体现。问:如果希望某个成员只是本类可见,可以加什么修饰符?问: Java中的权限修饰符有哪些,可见性范围分别是什么?问:子类可以继承父类私有成员吗?
2025-04-26 15:55:15
183
原创 面向对象编程有哪些特征?
多态有两种形式:静态多态(也称为编译时多态,如方法重载)和动态多态(也称为运行时多态,如方法重写)。通常我们说的多态都是指动态多态,动态多态是通过继承和接口实现的,允许我们使用父类或接口类型的引用指向子类对象,然后调用方法时,会根据对象的实际类型来决定调用哪个方法的实现。:抽象就是对同一类事物的共有的属性/特征、方法/功能/行为等进行抽取并归纳总结,它是一种将复杂现实简化为模型的过程,它关注的是对象的行为,而不用关注具体的实现细节。抽象可以在不知道具体实现的情况下编程,提高了代码的灵活性和扩展性。
2025-04-26 15:43:30
241
原创 数组相关的算法题*3
有一个数组依次存储0-999,要求每隔2个数删掉一个数,到末尾后循环到开头继续进行,直到只剩下1个元素。用Java实现素数生成,输入参数n,返回不大于n的素数数组。案例3:循环打印n行的杨辉三角。案例2:产生一组素数。
2025-03-29 16:33:21
151
原创 为什么要对微服务进行系统拆分?如何进行系统拆分?
(4)确定当前要拆分应用的架构状态、代码情况、依赖阻抗,并扮演可能的各种异常。(2)定义边界,原则:高内聚、低耦合、单一职责;(5)新坑越挖越多,恶性循环。(1)多维度把握业务复杂度;(3)确定拆分后的应用目标;(3)代码老旧,难以维护;为什么要进行系统拆分?(1)应用间揭合严重;(2)业务形展性差;(4)系统扩展性差;
2025-03-29 12:05:01
127
原创 如何设计一个高并发系统?
所以得考虑项目中,那些承载复杂写业务逻辑的场景里,如何用MQ来异步写,提升并发性,MQ单机抗几万并发也是OK的。ElasticSearch简称es,是分布式的,可以随便扩容,分布式天然就可以支撑高并发,因为动不动就可以扩容加机器来扛更高的并发。必须会用到缓存,大部分的高并发场景,都是读多写少。所以,可以考虑你的项目中,那些承载主要请求的读场景,怎么同缓存来抗高并发。将一个系统拆分为多个子系统,用dubbo来搞,然后每个系统连接一个数据库,这样本来一个库,现在多个数据库,可以提高并发。
2025-03-29 11:53:37
166
原创 在微服务中如何限流?在工作中是怎么做的?说一下具体的实现?
放令牌这个动作是持续不断地进行,如果桶中令牌数达到上限,就丢弃令牌,所以就存在这种情况:桶中一直有大量的可用令牌,这时进来的清求就可以直接拿到令牌执行,比如设置qps为100,那么限流器初始化完成一秒后,桶中就已经有100个令牌了,这时服务还没完全启动好,等启动完成对外提供服务时,该限流器就可以抵挡瞬时的100个请求。采用计数器实现限流有点简单粗暴,一般我们会限制一秒钟的能够通过的请求数,比如限流qps为100算法的实现思路就是从第一个请求进来开始计时,在接下去的 1s内,每来一个清求,就把计数加1。
2025-03-28 11:02:50
586
原创 循环算法题*3
有一人去买鸡,公鸡每只5元,母鸡每只3元,小鸡每3只1元,用100元买100只鸡,要求公鸡、母鸡、小鸡都要有,各买多少只?输出n行*组成的等腰三角形。
2025-03-25 20:23:48
156
原创 if-else和switch-case有什么区别?
效率:当条件是判断某个变量或表达式是否等于某个固定的常量值时,使用if和switch都可以实现,但是使用switch 效率更高。穿透性:使用switch可以利用穿透性,同时执行多个分支,而if-else没有穿透性。
2025-03-25 18:58:09
246
原创 Java有几个关键字?
数据美型有关(12个):byte,short,int,long,float,double,char,boolean,void,class,interface,enum。流程控制语句传构(11个):if,else,switch,case,dafault,for,while,do,break, continue,return。测试和异常处理(6个):assert,try,catch,finally,throw,throws。对象和引用(4个):new,this,super,instanceof。
2025-03-25 18:39:23
235
原创 微服务带来了哪些挑战?
微服务应用是分布式系统,涉及多个独立运行的服务,这增加了系统的复杂性,包括网络通信、故障处理和事务管理等方面。不同微服务可能拥有各自的数据存储,确保数据一致性和同步可能需要复杂的解决方案。管理多个微服务的开发,测试、部署和维护需要更多的工程师资源,这可能导致开发和维护成本上升。管理多个微服务的发现、注册、版本控制和路由需要额外的复杂性。管理跨多个微服务的事务变得复杂,确保事务的一致性和隔离性需要额外的努力和技术。这可能需要额外的工作量。需要有效的方法来跟踪和诊断跨多个服务的故障,以便快速恢复。
2025-03-24 21:15:55
148
原创 如何跳出Java的多层循环
使用标签+break语句就可以跳出Java中的循环,下例中的代码可以作为参考实例。或者使用变量标记法+break来控制循环,下例中的代码可以作为参考实例。
2025-03-24 20:33:45
137
原创 AttributeError: ‘AAttn‘ object has no attribute ‘qk‘. Did you mean: ‘qkv‘? Yolov12环境配置时遇到的问题
在配置Yolov12的推理验证过程中,出现了下述问题。此时你的处理过程非常简单,你只需要将代码版本进行更新。在终端运行上述代码后,再运行。
2025-03-24 14:46:52
1172
原创 用Python实现简单的TCP套接字编程
这里给出了应用程序客户端的代码:from socket import *serverName = 'localhost'serverPort = 12000clientSocket = socket(AF_INET, SOCK_STREAM) # 客户套接字的创建,第一个参数仍指示底层网络使用的是IPV4,第二个参数表明它是一个TCP套接字clientSocket.connect((serverName, serverPort)) # connect()方法的参数是服务器端的地址,在这段
2022-03-28 15:52:12
4623
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人