51CTO首页
AI.x社区
博客
学堂
精品班
软考社区
免费课
企业培训
鸿蒙开发者社区
WOT技术大会
IT证书
公众号矩阵
移动端
短视频
免费课程
课程排行
直播课
软考学堂
全部课程
厂商认证
IT技术
24年11月软考
PMP项目管理
免费题库
在线学习
文章
资源
问答
课堂
专栏
直播
51CTO
鸿蒙开发者社区
51CTO技术栈
51CTO官微
51CTO学堂
51CTO博客
CTO训练营
鸿蒙开发者社区订阅号
51CTO软考
51CTO学堂APP
51CTO学堂企业版APP
鸿蒙开发者社区视频号
51CTO软考题库
鸿蒙开发者社区
首页
帖子
问答
资源
课堂
直播
发现
登录/注册
51CTO
中国优质的IT技术网站
51CTO博客
专业IT技术创作平台
51CTO学堂
IT职业在线教育平台
活动
短视频
专栏
极客Show
鸿蒙技术特刊
我的关注
全部帖子
操作系统
OpenHarmony
HarmonyOS
其他
应用开发
卡片开发
三方库
IDE
其他
设备开发
海思开发板
树莓派
其他
框架语言
C/C++
Java
JavaScript
ArkUI / eTS
其他
其他
物联网
云原生
数据库
操作系统
大数据
人工智能
开发语言
其他
社区版务
社区公告
社区生活
意见反馈
社区规则
社区活动
默认
发布时间
热度
原创
精华
热门标签
HarmonyOS NEXT
梅科尔工作室
#HarmonyOS NEXT
关于C++多态的基础知识讲解
一.多态性有两种表现形式:1)编译时多态性:同一对象在收到相同的消息却产生不同的函数调用,一般通过函数重载来实现,在编译时就实现了绑定,属于静态绑定。2)运行时多态性:不同对象在收到相同消息时产生不同的动作,一般通过虚函数来实现。二.多态和非多态的实质区别函数地址为动态绑定还是静态绑定。三.多态的作用对于封装,可以使代码模块化。对于继承,可以扩展已经存在的代码。而多态,是为了接口重用。四.多态最常见的...
jkfox
0回复
8809浏览
C++
多态
C++的单例模式的几种实现方式解析
单例模式有两种实现模式:1)懒汉模式:就是说当你第一次使用时才创建一个唯一的实例对象,从而实现延迟加载的效果。2)饿汉模式:就是说不管你将来用不用,程序启动时就创建一个唯一的实例对象。所以,从实现手法上看,懒汉模式是在第一次使用单例对象时才完成初始化工作。因为此时可能存在多线程竞态环境,如不加锁限制会导致重复构造或构造不完全问题。饿汉模式则是利用外部变量,在进入程序入口函数之前就完成单例对象的初...
棉花糖
0回复
2.3w浏览
C++
单例模式
oracle提高查询效率的34条方法
1、选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表drivingtable)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询,那就需要选择交叉表(intersectiontable)作为基础表,交叉表是指那个被其他表所引用的表.2、WHERE子句中的连接顺序ORACLE采用自下而上的顺序解析WHER...
jojo
0回复
8552浏览
Oracle
浏览器大战与 JavaScript 的诞生
浏览器大战在Android设备或iPhone流行之前,浏览器大战的战场是桌面计算机平台。众多公司投入了数十亿美元投身这场战役,而他们的出发点就是基于这样的一个假设:谁统治了桌面浏览器市场,谁就将统治整个互联网。如今,所有网站的全部流量有将近一半来自移动设备;但在20世纪90年代,网络上的几乎所有活动都是来自台式机的,而绝大多数台式电脑都运行着某个版本的微软Windows操作系统。Netscape称霸的岁月在浏览器领域,网景通...
lingyuli
0回复
7808浏览
JavaScript
如何实现 JS 真正意义上的弱引用?
本文将详细解释JavaScript中对象的引用是强引用,WeakMap和WeakSet可以提供部分的弱引用功能,若想在JavaScript中实现真正的弱引用,可以通过配合使用WeakRef和终结器(Finalizer)来实现。一般来说,在JavaScript中,对象的引用是强保留的,这意味着只要持有对象的引用,它就不会被垃圾回收。constref{x:42,y:51};只要我们访问ref对象(或者任何其他引用指向该对象),这个对象就不会被垃圾回收目前,在Javascript中,WeakMap...
lingyuli
0回复
1.2w浏览
JavaScript
深入理解java的反射机制
今天将从以下4方面来系统的学习一下java的反射机制:java反射是什么java反射(Reflection)底层实现原理java反射的简单演示java反射的应用场景1,java反射是什么首先大家应该先了解两个概念,编译期和运行期,编译期就是编译器帮你把源代码翻译成机器能识别的代码,比如编译器把java代码编译成jvm识别的字节码文件,而运行期指的是将可执行文件交给操作系统去执行,JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类...
蓝月亮
0回复
2.9w浏览
Java
线程的生命周期及五种基本状态
一.线程的生命周期及五种基本状态关于Java中线程的生命周期,首先看一下下面这张较为经典的图:上图中基本上囊括了Java中多线程各重要知识点。掌握了上图中的各知识点,Java中的多线程也就基本上掌握了。主要包括:Java线程具有五中基本状态新建状态(New):当线程对象对创建后,即进入了新建状态,如:ThreadtnewMyThread();就绪状态(Runnable):当调用线程对象的start()方法(t.start();),线程即进入就绪状态。处于就绪...
蓝月亮
0回复
1.1w浏览
Java
线程
Java中Unsafe类的使用
Unsafe类的作用Unsafe类是rt.jar包中的类,它提供了原子级别的操作,它的方法都是native方法,通过JNI访问本地的C++库。它的出现是为了解决在高并发下的数据同步问题。synchronize关键字修饰的代码块被加了独占锁,相同时间只能有一个线程访问其中的内容,在高并发下这必然会导致大量线程挂起,从用户态转为内核态,带来很大的消耗而且操作效率低下。CAS算法的出现使得在不使用synchronize这种“悲观锁”依然可以实现数据的安全...
蓝月亮
0回复
6932浏览
Java
内存泄漏和内存溢出的区别和联系
1、内存泄漏memoryleak:是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。2、内存溢出outofmemory:指程序申请内存时,没有足够的内存供申请者使用,或者说,给了你一块存储int类型数据的存储空间,但是你却存储long类型的数据,那么结果就是内存不够用,此时就会报错OOM,即所谓的内存溢出。3、二者的关系1.内存泄漏的堆积最终会导致内存溢出2.内存溢出就...
蓝月亮
0回复
1.2w浏览
内存泄漏
内存溢出
几个最难回答的 Java 问题
1.为什么等待和通知是在Object类而不是Thread中声明的?一个棘手的Java问题,如果Java编程语言不是你设计的,你怎么能回答这个问题呢。Java编程的常识和深入了解有助于回答这种棘手的Java核心方面的面试问题。为什么wait,notify和notifyAll是在Object类中定义的而不是在Thread类中定义这是有名的Java面试问题,招24年经验的到高级Java开发人员面试都可能碰到。这个问题的好在它能反映了面试者对等待通知机制的了解,以及他对此...
蓝月亮
0回复
9410浏览
Java
JS 引擎大 PK:JSC vs V8 vs Hermes
问题我们开发的一款名为WalmartLabs的安卓应用遇到了内存问题,起因是安卓自带的JSC的垃圾回收基本没用。我们试了很多办法来减少这个应用的内存占用,但是都没成功。当ReactNative的简单列表(FlatList)中有很多项目(我们的情况下有超过1千的数量)时问题就更加严重了。在不同页面间跳转时内存用量持续上升,就算清空数据后也不会下降。救星几周前kudochien发了一条推文推荐reactnativev8这个包,用了这个包我们就能在安卓的r...
lingyuli
0回复
1.7w浏览
JavaScript
JDK 15 JAVA 15 的新特性展望
伴随着2020的寒冬和新冠病毒的肆虐,JAVA迎来了久未已久的JAVA14。自从2017年JAVA9发布之后,JAVA的发布版本跟上了敏捷开发的步伐,小步快跑,Java平台发布节奏已从每3年以上的主要版本转变为每6个月发布一次功能。现在,每年的3月和9月都会发布新的版本功能。三月已过,九月还远吗?在JAVA14中,推出了swith的最终版本,并且支持了NVM。今天本文将会展望一下JAVA15中会带给我们的新特性。总体来说有5个JEP将会提交到JAVA15。什...
七七QiQi
0回复
7082浏览
JDK15
JAVA15
jdk
java
一口气说出java中 OAuth2.0 的四种授权方式
项目偏向于技术实践,因此不会做太多的业务堆砌,业务代码还是在公司学习比较好。现在正在做技术的选型与储备,像比较主流的,项目前后端分离、微服务、Springboot、Springcloud等都会应用到项目中,其实很多技术我也不会,也是在反复的查阅资料求证,探索的过程技术提升真的要比工作中快很多,毕竟主动与被动学习是有本质区别的。这几天打算先把项目的前后端分离架构搭建完成,既然是前后端分离项目就免不了做鉴权,所以oauth2...
lingyuli
0回复
1.5w浏览
java
Linux 服务器存在某进程 CPU 过高如何追溯其问题根源?
问题描述:在本人运维的一个省级平台系统中,最近有用户反应系统很卡一直转圈圈.经初步核查发现某web服务器节点存在JAVA进程cpu占比超过100%的情况。为了不影响用户使用,暂时只能采取简单粗暴的方法"重启服务器"。这其中有如下2个疑问,1该平台web服务器有7个节点,为何只是其中一个节点无法访问会导致外网用户会觉得系统卡甚至无法访问?2为啥cpu占比这么高,究竟是是业务的那些代码写的有问题,如何把它揪出来?带着这两个问...
lingyuli
0回复
1.2w浏览
linux
Java 并发编程系列——线程池
之前写了线程和锁,例子中采用直接创建线程的方式,这种方式做示例可以,但在实际生产环境中比较少用,通常会使用线程池。使用线程池有一些明显的好处,可以考虑我们使用连接池的情形,不难想像。使用线程池可以免去我们手动创建和销毁线程的工作,节省这部分资源的消耗,提高响应速度,同时线程由线程池维护,也提高了线程的可管理性。JDK中默认实现了多种线程池,如FixedThreadPool,SingleThreadExecutor,CachedThreadPool...
lingyuli
0回复
9567浏览
线程池
java
你真的理解 Java 的基础数据类型吗
Java中的基础数据类型有8种,分别是:byte,boolean,short,charint,float,longdouble。如果要理解这些基础类型如何存储数据,需要知道两个基础知识:所有数据都是使用二进制表示数值类型一律使用补码来表示本文基于JDK1.8整数类型byte是存储整数的最小类型,只占1个字节,因为还需要表示负数,因此只能保存128127范围内的数据。如果把一个超出范围的数值赋值给byte会怎么样?直接赋值无法编译通过:byteb129;编译通不过需要通过...
lingyuli
0回复
2.7w浏览
基础数据类型
java
Nginx16 连环问,你被问到了吗
作为一个后端程序员,Nginx也是必备技能之一哦,作为一个web服务器,Nginx的性能方面是很不错的。本文总结或16个知识点,或者面试题分享给大家,后续还会继续更新⛽️。1.什么是nginxNginx是一个高性能的HTTP和反向代理服务器。同时也是一个IMAPPOP3SMTP代理服务器。官方网站:http:nginx.org。2.nginx主要特征?处理静态文件,索引文件以及自动索引;打开文件描述符缓冲.无缓存的反向代理加速,简单的负载均衡和容错.FastCGI,简...
lingyuli
0回复
6432浏览
Nginx16
java
Java 小想法: JDK 许可证
是的,Java已经25周岁了。25周年,我们可以聊聊Java世界的一些见闻和小想法。首先我想到的,就是JDK许可证的变化,以及随之而来的困惑、误解,以及变化带来的生态效应。这两年,影响Java生态格局最大的事情,莫过于起始于2018年的JDK许可模式和发布模式的变更。老的许可证什么样?十多年来,JavaSE的授权一直使用BCL模式。BCL模式允许用户在一定的限制条件下,免费使用JDK。比如,下面就是一个免费许可及其限制的条款:2.LICENS...
lingyuli
0回复
1.1w浏览
Java
JDK
为什么建议你在JAVA中使用枚举?
枚举是JDK1.5新增的数据类型,使用枚举我们可以很好的描述一些特定的业务场景,比如一年中的春、夏、秋、冬,还有每周的周一到周天,还有各种颜色,以及可以用它来描述一些状态信息,比如错误码等。枚举类型不止存在在Java语言中,在其它语言中也都能找到它的身影,例如C和Python等,但我发现在实际的项目中使用枚举的人很少,所以本文就来聊一聊枚举的相关内容,好让朋友们对枚举有一个大概的印象,这样在编程时起码还能想到有...
lingyuli
0回复
1.3w浏览
java
枚举
读懂才会用:Redis ZSet 的几种使用场景
本文展示延时队列、排行榜、限流具体的使用方法和问题,供大家参考。代码示例,仅仅是Demo,在生产使用需要考虑更多细节问题。1.延时队列zset会按score进行排序,如果score代表想要执行时间的时间戳。在某个时间将它插入zset集合中,它变会按照时间戳大小进行排序,也就是对执行时间前后进行排序。起一个死循环线程不断地进行取第一个key值,如果当前时间戳大于等于该key值的score就将它取出来进行消费删除,可以达到延时执行的...
lingyuli
0回复
1.5w浏览
Redis
java
暂无内容
1
1049
1050
1051
1052
1053
1054
1055
1056
1057
1077
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅