51CTO首页
AI.x社区
博客
学堂
精品班
软考社区
免费课
企业培训
鸿蒙开发者社区
信创认证
公众号矩阵
移动端
视频课
免费课
排行榜
短视频
直播课
软考学堂
全部课程
软考
信创认证
华为认证
厂商认证
IT技术
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
鸿蒙
行向鸿蒙深处
几个最难回答的 Java 问题
1.为什么等待和通知是在Object类而不是Thread中声明的?一个棘手的Java问题,如果Java编程语言不是你设计的,你怎么能回答这个问题呢。Java编程的常识和深入了解有助于回答这种棘手的Java核心方面的面试问题。为什么wait,notify和notifyAll是在Object类中定义的而不是在Thread类中定义这是有名的Java面试问题,招24年经验的到高级Java开发人员面试都可能碰到。这个问题的好在它能反映了面试者对等待通知机制的了解,以及他对此...
蓝月亮
0回复
1.2w浏览
Java
JS 引擎大 PK:JSC vs V8 vs Hermes
问题我们开发的一款名为WalmartLabs的安卓应用遇到了内存问题,起因是安卓自带的JSC的垃圾回收基本没用。我们试了很多办法来减少这个应用的内存占用,但是都没成功。当ReactNative的简单列表(FlatList)中有很多项目(我们的情况下有超过1千的数量)时问题就更加严重了。在不同页面间跳转时内存用量持续上升,就算清空数据后也不会下降。救星几周前kudochien发了一条推文推荐reactnativev8这个包,用了这个包我们就能在安卓的r...
lingyuli
0回复
2.1w浏览
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回复
9604浏览
JDK15
JAVA15
jdk
java
一口气说出java中 OAuth2.0 的四种授权方式
项目偏向于技术实践,因此不会做太多的业务堆砌,业务代码还是在公司学习比较好。现在正在做技术的选型与储备,像比较主流的,项目前后端分离、微服务、Springboot、Springcloud等都会应用到项目中,其实很多技术我也不会,也是在反复的查阅资料求证,探索的过程技术提升真的要比工作中快很多,毕竟主动与被动学习是有本质区别的。这几天打算先把项目的前后端分离架构搭建完成,既然是前后端分离项目就免不了做鉴权,所以oauth2...
lingyuli
0回复
1.9w浏览
java
Java 并发编程系列——线程池
之前写了线程和锁,例子中采用直接创建线程的方式,这种方式做示例可以,但在实际生产环境中比较少用,通常会使用线程池。使用线程池有一些明显的好处,可以考虑我们使用连接池的情形,不难想像。使用线程池可以免去我们手动创建和销毁线程的工作,节省这部分资源的消耗,提高响应速度,同时线程由线程池维护,也提高了线程的可管理性。JDK中默认实现了多种线程池,如FixedThreadPool,SingleThreadExecutor,CachedThreadPool...
lingyuli
0回复
1.2w浏览
线程池
java
你真的理解 Java 的基础数据类型吗
Java中的基础数据类型有8种,分别是:byte,boolean,short,charint,float,longdouble。如果要理解这些基础类型如何存储数据,需要知道两个基础知识:所有数据都是使用二进制表示数值类型一律使用补码来表示本文基于JDK1.8整数类型byte是存储整数的最小类型,只占1个字节,因为还需要表示负数,因此只能保存128127范围内的数据。如果把一个超出范围的数值赋值给byte会怎么样?直接赋值无法编译通过:byteb129;编译通不过需要通过...
lingyuli
0回复
3.1w浏览
基础数据类型
java
Nginx16 连环问,你被问到了吗
作为一个后端程序员,Nginx也是必备技能之一哦,作为一个web服务器,Nginx的性能方面是很不错的。本文总结或16个知识点,或者面试题分享给大家,后续还会继续更新⛽️。1.什么是nginxNginx是一个高性能的HTTP和反向代理服务器。同时也是一个IMAPPOP3SMTP代理服务器。官方网站:http:nginx.org。2.nginx主要特征?处理静态文件,索引文件以及自动索引;打开文件描述符缓冲.无缓存的反向代理加速,简单的负载均衡和容错.FastCGI,简...
lingyuli
0回复
8730浏览
Nginx16
java
Java 小想法: JDK 许可证
是的,Java已经25周岁了。25周年,我们可以聊聊Java世界的一些见闻和小想法。首先我想到的,就是JDK许可证的变化,以及随之而来的困惑、误解,以及变化带来的生态效应。这两年,影响Java生态格局最大的事情,莫过于起始于2018年的JDK许可模式和发布模式的变更。老的许可证什么样?十多年来,JavaSE的授权一直使用BCL模式。BCL模式允许用户在一定的限制条件下,免费使用JDK。比如,下面就是一个免费许可及其限制的条款:2.LICENS...
lingyuli
0回复
1.3w浏览
Java
JDK
为什么建议你在JAVA中使用枚举?
枚举是JDK1.5新增的数据类型,使用枚举我们可以很好的描述一些特定的业务场景,比如一年中的春、夏、秋、冬,还有每周的周一到周天,还有各种颜色,以及可以用它来描述一些状态信息,比如错误码等。枚举类型不止存在在Java语言中,在其它语言中也都能找到它的身影,例如C和Python等,但我发现在实际的项目中使用枚举的人很少,所以本文就来聊一聊枚举的相关内容,好让朋友们对枚举有一个大概的印象,这样在编程时起码还能想到有...
lingyuli
0回复
1.6w浏览
java
枚举
读懂才会用:Redis ZSet 的几种使用场景
本文展示延时队列、排行榜、限流具体的使用方法和问题,供大家参考。代码示例,仅仅是Demo,在生产使用需要考虑更多细节问题。1.延时队列zset会按score进行排序,如果score代表想要执行时间的时间戳。在某个时间将它插入zset集合中,它变会按照时间戳大小进行排序,也就是对执行时间前后进行排序。起一个死循环线程不断地进行取第一个key值,如果当前时间戳大于等于该key值的score就将它取出来进行消费删除,可以达到延时执行的...
lingyuli
0回复
1.8w浏览
Redis
java
Java 中的两种 BIO
核心结论:不同版本jdk实现方式不一致如果不给socket设置nonblocking,accept会阻塞直到数据到达poll的调用是阻塞的,直到注册的event发生后,返回发生事件的fd环境准备centOS7jdk1.5.0jdk1.8.0strace测试代码BIOServer.javaimportjava.io.IOException;importjava.net.ServerSocket;publicclassBIOServer{publicstaticvoidmain(String[]args)throwsIOException{ServerSocketservernewServerSocket(8080);while(true){server.acc...
lingyuli
0回复
1.1w浏览
java
BIO
简单完整讲述Servlet生命周期
Servlet生命周期过程详解:1.加载web.xml文件——当前只去解析xml文件,知道servlet的存在,此时还没有去创建servlet。<!声明servlet><servlet><!servlet的别名><servletname>first<servletname><servletclass>com.etime.servlet.FirstServlet<servletclass><servlet><!将servlet与URL绑定><!servlet映射部分><servletmapping><servletname>first<servletname><urlpattern>hello<urlpattern><servletmapping>2.创建构造函数——...
柳随风
0回复
1.4w浏览
tomcat
servlet
Java
jsp 九大内置对象及其作用
一,JSP九大内置对象JSP中一共预先定义了9个这样的对象,内置对象名类型requestHttpServletRequestresponseHttpServletResponseconfigServletConfigapplicationServletContextsessionHttpSessionexceptionThrowablepageObject(this)outJspWriterpageContextPageContext1、request对象request对象是javax.servlet.httpServletRequest类型的对象。该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包...
柳随风
0回复
9392浏览
JSP
一文看懂前端和后端开发
作为一名开发者,你可能会想:2019年最好的软件开发技术和编程语言会是什么?它们又是如何被应用在软件开发当中的?如果你在思考这个问题,那就来对地方了。这篇文章将对前端和后端开发技术做一个对比,先从基本的开始,然后逐步比较它们的不同点,比如对开发技能的要求、发展潜力、职业生涯的发展和薪水,等等。什么是前端开发?前端开发主要涉及网站和App,用户能够从App屏幕或浏览器上看到东西。简单地说,能够从App屏幕和浏...
柳随风
0回复
2.3w浏览
前端
后端
开发
JavaScript 的边缘之旅
前言在2008年,Google的Chromium项目发布了V8,一个JavaScript引擎。在2009年,RyanDahl宣布一种在浏览器之外运行V8浏览器环境的方法,Node.js。在十年之后,V8,JavaScript及其新伙伴WebAssembly,已经扩展到一种叫“边缘”的领域。在今年的JSConfEU上,AshleyWilliams将介绍“边缘”是什么,为什么对其在网络上革新计算感到兴奋。她将探索JavaScriptV8引擎是如何适合那些受限制于虚拟机、容器,甚至是简单操作系统的任务。为...
柳随风
0回复
8631浏览
前端
JavaScript
Facebook 开源 JavaScript 引擎 Hermes:显著降低启动时间和内存
近日,Facebook开源了JavaScript引擎Hermes,该引擎旨在提高ReactNativeApp在Android设备上的性能,尤其是启动性能、安装文件大小和内存消耗。微软Office和Mattermost(Slack的一个开源替代品)的初步基准测试都证实了这一点。Hermes源于Facebook内部一个提高自身移动应用性能的项目。工程师们注意到其中一个关键因素是JavaScript引擎本身,所以他们决定针对移动应用受限的环境对引擎进行优化。在探索了其他选项后,我们构建了一...
柳随风
0回复
1.0w浏览
前端
JavaScript
JavaScript 何以跻身最伟大编程语言之列?
JavaScript从诞生之初作为Web开发的替补工具,不断发展并打败挑战者,在成就现代Web的同时,发展成为了伟大的编程语言之一。如果你在1999年预测,20年后JavaScript会成为编程领域最流行的语言之一,那你要么是通灵未来,要么就是精神错乱。世纪之交的JavaScript不仅无法做到专业语言能够做到的,它甚至没有被设计为一种严肃的编码工具。毕竟,需要创建Web应用程序的开发者已经拥有了他们喜欢使用的程序工具——Java,通过appl...
柳随风
0回复
1.1w浏览
前端
JavaScript
JavaScript 的未来是模块化?
模块是JavaScript的未来?本文将主要介绍在生产环境中部署原生JavaScript模块的方法,以提高网站的负载性能和运行时性能。两年前我写了一篇文章介绍了一种技术——现在通常被称为modulenomodule模式——这种技术让你可以编写ES2015+版本的JavaScript代码,然后使用打包器和转换工具生成两个版本的代码库,一个版本使用现代语法(通过加载),另一个使用ES5语法(通过加载)。这项技术使你可以向支持模块的浏览器发送少得多的代...
柳随风
0回复
1.0w浏览
JavaScript
前端
六个字符构建 Javascript 世界
无用但有趣的冷知识,通过[]()!+构建Javascript世界,hopeyouenjoyit!Javascript是一门非常奇怪,同时也非常棒的语言,我们可以用它写出非常疯狂但却奏效的代码,同时,它也能根据我们使用的方式进行类型转换从而辅助开发。构建假设如果将字符串(string)和其他类型参数相加,它会猜测我们需要文本格式,最后结果将返回string类型。如果将其他类型参数加上+或前缀,它知道我们需要一个数值类型(Number),如果类型转换合法,紧...
柳随风
0回复
8597浏览
JavaScript
前端有架构吗?
从事前端开发的你,不知有没有被问过:「前端有架构吗?」问你的人的身份,可能是你的boss或上司,可能是后端同事,也可能是前端同行;问你的人的目的,可能是刁难,可能是嘲讽,也可能是请教。前端开发众所周知,做前端开发所依赖的核心技术就是HTML、CSS和JS,就像好基友一样形影不离,我们将它们仨亲切地并称为「三剑客」。经过这二十多年,尤其是在V8引擎及Node.js出现之后,以「三剑客」为基础的衍生技术如雨后春笋般大量...
柳随风
0回复
1.3w浏览
前端
前端架构
暂无内容
1
302
303
304
305
306
307
308
309
310
317
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅