展开

关键词

这段代码我猜76.85%的Java程序员都看不懂

Java 8 提供的一系列的语法糖和特性让Java又焕发了青春。虽然现在Java 16已经发布数月,Java 17还有不到一个月时间也要面世了。但是不少开发者依然使用着Java 8 。 你发任你发,我用Java 8。听说你Java 8 用的很溜? 来用这段代码考察一下你的Java 8的熟练度,不要怀疑,这段代码是可执行的: public interface O { interface $ { void $() } void O($<O> o); default O O() { return $<O>::<O>$; } } 这段代码非常抽象 不过通常我们不会这样写,写这样的代码可能会被同事打死。能写出这样的Java代码也需要一定的创造力,而阅读这样的代码需要一定的忍耐力。搞清楚这几行代码花了我近1小时的时间,你需要多长时间呢?

13420

看不懂的 build.gradle 代码

但是,不知道你们会不会跟我一样,在 github 上 clone 大神的项目后,总会发现他们的 build.gradle 里多了很多平常没看见过的代码,而且还看不懂代码要做什么; 或者是比如当需要进行签名时 ---- 系列索引 build.gradle系列一:看不懂的build.gradle代码 build.gradle系列二:学点Groovy来理解build.gradle代码 build.gradle ,参照着注释看代码就行,是不是发现有很多代码平时都没看见过。 locationNum=12 apply plugin: 'me.tatarka.retrolambda' //这里是groovy的代码了,定义了一个获取时间的方法,groovy是兼容java,它可以直接使用 releaseTime() { return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC")) } //file()是Project.java

65950
  • 广告
    关闭

    老用户专属续费福利

    云服务器CVM、轻量应用服务器1.5折续费券等您来抽!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    看不懂同事代码?快来补一波 Java 7 语法特性

    但是也因为这种特性,让 Java 开发似乎变得缺少灵活性,开发某些功能的应用时,代码量可能是其他语言的几倍。 下面所有代码的运行演示都是基于 Java 7 ,所以你如果尝试下面的代码,需要安装并配置 Jdk 1.7 或者已上版本。 最后看着这复杂的代码,如果有人告诉你这段代码有 bug,那你一定不会相信。 但是确实是这样,看起来严密的代码逻辑,当 try 中的代码逻辑和 close 方法同时产生异常的时候,try 中的异常信息会丢失。 可以看这里例子。 Exception { System.out.println("资源关闭"); throw new IOException("关闭异常"); } } 很明显代码

    18730

    Java并发基础,不怕你看不懂

    Java 程序的进程(Java 的一个程序运行在系统中)里至少包含主线程和垃圾回收线程(后台线程),你可以简单的这样认为,但实际上有四个线程(了解就好): [1] main——main 线程,用户程序入口 先来一段代码,通过并行和串行来分别执行累加操作,分析:下面的代码并发执行一定比串行执行快吗? 为了解决访问共享资源错误或数据不一致的问题,人们引入了临界区的概念:用以访问共享资源的代码块,这个代码块在同一时间内只允许一个线程执行。 Java 并发包(java.util.concurrent,JUC)中大多数类注释都写有:@author Doug Lea。 Doug Lea 在当大学老师时,专攻并发编程和并发数据结构设计,主导设计了 JUC 并发包,提高了 Java 并发编程的易用性,大大推进了 Java 的商用进程。

    26030

    如何让别人看不懂你的代码

    那么换个角度,如何让别人看不懂你的代码,如何让你的代码只有你能维护,可能更容易理解吧~ 命名 获取用户上次登陆使用的设备,这个简单的名字 getUserLastTimeLoginDeviceUsed, getUserShangCiLoginseBei,别人看代码的时候应该也开始看不懂啦 别人嫌名字太长的缘故,非让改。 改就改 getULTLDU,来吧哥们儿,这个够短吧~ 还是长? 一撸袖子就是干,尽量别使用局部变量,如果是个Java程序员,可以试试看用静态替换下,Cpp程序员可以狠狠心,创造2w个全局变量,如果起名24个字母不够用,试试英文词典,别管词义,能用就行。 注释 注释里可能需要一点社会工程学知识 有如下选择,别人看不懂代码的可能性依次增加 1、不加注释 2、加上注释,注释内容放一串所需解释代码的伪代码,再或者写一篇800字儿散文 3、写注释的时候记住 可能IDE有检测功能,别慌,可以试着调用它,这样能唤醒一大片无用代码~ 最后,记住,把Author 默默删掉,循序渐进修改代码,等它们慢慢分布到整个业务系统的各个模块,别急着上来就让别人看不懂,要不很容易被重构掉的

    95340

    我开源的代码竟然有人说看不懂

    大家好,我是3y 今天继续更新austin项目,如果还没看过该系列的同学可以点开我的历史文章回顾下,建议不要漏了或者跳着看,不然这篇就看不懂了,之前写过的知识点和业务我就不再赘述啦。 在这次实现中,我也是用了责任链模式,具体完整的代码大家就去Gitee拉就好了。很多同学拉完代码发现看不懂了,大家可以按照下面的图去梳理下责任链的各个角色。 如果实在看不懂,建议翻下我以前写过的责任链文章(已经投稿过两篇了) 回到代码实现吧,这次我实现的业务是:参数前置检查->参数拼装->发送消息 在这几个流程中,可能你下次拉代码的时候,会看到有“后置检查 (注:这是第一版实现,后面肯定会在基础上添加逻辑或注释的,其实已经在写了,但我一般是有个小阶段再push代码,所以记得star下gitee方便看最新的代码) 先来说前置检查吧,主要就判断模板ID是否有传入 但自从push了代码以后,在群里提醒各位跟着做项目的小伙伴后,有好几位向我反馈看不太懂,所以这篇我就单独拎出来讲讲。

    18420

    看不懂代码?AI给你做翻译,说人话的那种

    这一次,它不再是帮你写代码了,而是充当一个“翻译官”: 用“人话”告诉你,这段代码到底写了啥。 瞧,只需要选中一段代码,然后点一下旁边的“Ask Copilot”,就会快速得到代码的“人话版”解释: 示例中的代码片段是这样的: if len(l)=0:     return None else 不仅是Copilot,“AI给代码做注释”这事最近在Reddit也比较火。 有位贴主上传了他用AI技术,给代码做注释的demo。 不同于Copilot的Explain Code,这个AI不会非常详尽地去描述每行代码运行的过程。 而是概括性地去讲“这段代码是干嘛的”。 以下面这个代码片段为例: 在AI“解读”过后,它就会告诉你: 这段代码是用来从GitHub的Repo中收集数据。 会返回一个数据的矩阵。

    8320

    看不懂代码也能做网站(一)---效果演示以及环境搭建

    到此处运行环境的安装就完成啦 后续会推出 每个平台的详细搭建过程 前端:js入门 vue入门 vue开发小程序 等 后端: java入门 springboot入门等 服务器:mysql入门

    20020

    我很想学编程,但看不懂编程代码怎么办?

    从事编程开始十几年,面试过很多初级学习编程的人,几乎每个人都有一种所谓的编程情怀,觉得编程非常有意思,想着去学习编程,所以开始看不懂编程代码是一件非常正常的事情,很多人学了几个月的编程头脑还是浆糊状态也是特别正常 ,既然要学习编程就要拿出学习编程的决心和毅力,正是因为看不懂才会绞尽脑汁的学习,并且不断变换自己的学习思路,来完成编程学习路子上一个个的困难。 学习编程关键在于内在因素,很多人觉得学习编程就需要花大价钱,现实中未必是真实的,很多对编程感兴趣的大学生通过四年的大学学习,就把基本功弄得非常扎实,并且通过开源社区获取了大量的代码进行实践研究,有很大一部分还没出校门就把自己的工作搞定了

    1.2K30

    专治看不懂makefile的人

    举个例子 以下面简单的C++代码为例,说明makefile的具体使用。 上面两个规则完成了从源代码到可执行文件的编译。 即使项目只有5个文件,每次代码更新都要敲5个编译命令也是很麻烦的。 我们只要编写一次makefile,之后每次代码更新,或者代码文件有增减,都只需要修改makefile对应的一小部分内容,然后执行make就行了。 如果打开一个开源C++项目的makefile,会觉得完全看不懂,就是因为里面大量使用各种技巧。但即使我们用最原始办法也就是第一次编写麻烦一些,之后维护是很简单的,因为一个C++项目不会频繁的大变样。

    44030

    看不懂代码也能做网站(二)---使用wordpress搭建个人博客

    大家好,我是代码哈士奇,是一名软件学院网络工程的学生,因为我是“狗”,狗走千里吃肉。想把大学期间学的东西和大家分享,和大家一起进步。 是后台地址: 你的网站地址/wp-admin wordpress有丰富的模板库 还可以自己定义 这些操作在后台可以操作 后续会推出 前端:js入门 vue入门 vue开发小程序 等 后端: java

    23030

    看不懂O2O,自然看不懂百度

    恐慌心态还是看不懂? 这并不是百度跌得最惨的一次。2008年因为CCTV一则关于医疗广告的报道,投资者对百度股票进行了抛售。 美国投资者看不懂这种模式更是情有可原,去到硅谷就发现当地人几乎不会谈什么O2O、互联网+这样的概念,美国传统行业发展成熟,人力成本高诸多原因,留给互联网的机会并不多,而中国正面临着服务业升级,在劳动力大量富余的情况下

    33650

    看不懂CNC编程?送你一份CNC程序代码大全

    一、常用地址符含义 二、数控FANUC加工中心编程指令代码详解 辅助功能M指令 注:在一个程序段中只能有指令一个M指令,如果在一个程序中出现两个或两个以上的M指令时,则只有最后一个M指令有效,其余无效! 四、G指令代码详解 一、机床功能设定 1、G53—选择机床坐标系 格式:G53 X Y Z ;(X Y Z为机床坐标值) 注:当指定G53指令时,就清除刀具的半径补偿、刀具长度补偿和刀具偏值

    1.8K00

    javaScript代码飘红报错看不懂?读完这篇文章再试试!

    错误之前的代码会执行,之后代码不会执行。 错误之前的代码会执行,之后代码不会执行。 并运行catch代码块。 不会影响后续代码运行。 try{ //可能发生错误的代码 }catch(err){ //只有发生错误时才执行的代码 }finally{ //无论是否出错,肯定都要执行的代码 } 最后,代码出现错误并不可怕

    18420

    Babel配置傻傻看不懂

    答:我们上文提到,Babel在解析是时候会通过将code转换为AST抽象语法树,本质上是代码语法结构的一种抽象表示,通过以树? 的话,自己是无法完成翻译,而一个完整的“翻译”的过程是需要走完解析、转换、输出才能完成整个闭环,而这其中的每个环节都需要借助babel以下这些API @babel/parser: babel解析器将源代码 code解析成 AST @babel/generator: 将AST解码生成js代码 new Code @babel/traverse : 用来遍历AST树,可以用来改造AST~,如替换或添加AST原始节点 :啊宽同学:你不是说@babel/parser是也将源代码code解析成 AST吗?为啥@babel/core也是? usage: 打包时会自动根据实际代码的使用情况,结合 targets 引入代码里实际用到部分 polyfilll模块 false: 不会自动引入 polyfilll 模块,对polyfilll模块屏蔽

    42743

    Java 8 排序的 10 个姿势,太秀了吧!同事直呼看不懂。。

    不废话了,不信你继续往下看,=-= 今天栈长就分享 Java 8 进行排序的 10 个姿势,原来还有这么多排序技巧,其实就是把 Java 8 中的 Lambda、Stream、方法引用等知识点串起来,栈长的同事直呼还看不懂 Comparator 接口参数改成了用 Lambda 表达式的形式,用 Lambda 表达式干掉了匿名内部类,让代码更简洁。 欢迎留言分享~ 本文所有完整示例源代码已经上传: https://github.com/javastacks/javastack 欢迎 Star 学习,后面 Java 示例都会在这上面提供! 工作 3 年的同事不知道如何回滚代码! 23 种设计模式实战(很全) Spring Boot 保护敏感配置的 4 种方法! 面了个 5 年 Java,两个线程数据交换都不会! 新来一个技术总监:禁止戴耳机写代码。。 重磅!Spring Boot 2.7 正式发布 Java 18 正式发布,finalize 被弃用。。 Spring Boot Admin 横空出世!

    9330

    我这才发现,原来我根本看不懂Java的正则表达式!

    (?=\1\1\1) 这是一个零宽断言+反向引用,表示之后应该紧接着连续出现三次第一个捕获组匹配到的字符串,但这三次匹配不占位置,不会吃掉匹配到的字符,所以叫零...

    22520

    代码看不懂?那用excel进行拆分工作表总该看得懂了吧!

    在上期文章中,我们讲解了:python四、五行代码搞定工作表的拆分!既然python能拆分工作表,那excel可以吗?答案是肯定的!所以我们今天讲解excel如何快速的拆分工作表!

    15630

    java 实用 代码_java新手实用代码有哪些?java新手代码大全「建议收藏」

    对于java新手来说,积累一些实用的基础代码还是很有必要的,毕竟写代码是需要实践以及积累的,那么接下来,我们就来给大家分享一些java新手代码给大家参考! 1. 新手来说,Java代码的的确确不是那么容易掌握好的,Java代码编写首先要有很多的编程规则需要遵守,这对于Java新手来说,就是一个不太容易的挑战,并且掌握好一类Java代码编写,就得花费不少的时间,关键是学了又忘 Java新手想要学好代码首先得重视自己的内在功底修炼,Java代码刚开始编写的时候,肯定是错误百出的,这是很正常的,无需沮丧,调整好心态,屡败屡战才是你要做的事情,并且要不断的从模仿中汲取经验,然后把经验不断的累积 Java新手在Java代码学习上,无需操之过急,比如你一天只能够练习数目就为五遍,你非得让自己练习十遍,这样你会感觉到特别的疲倦,没有必要这样做,对于Java新手来说,学Java代码最好的办法就是循序渐进 ,多加练习,多加修炼,不断的对自己的要求提高,只要你坚持练习Java代码,心中有一定要把Java代码掌握好的信念,那么假以时日,你是可以学好Java代码的。

    12010

    Java代码规范

    Java代码规范 本Java代码规范以SUN的标准Java代码规范为基础,为适应我们公司的实际需要,可能会做一些修改。本文档中没有说明的地方,请参看SUN Java标准代码规范。 如果两边有冲突,以SUN Java标准为准。 1. 标识符命名规范 1.1 概述 标识符的命名力求做到统一、达意和简洁。 1.1.4 骆驼法则 Java中,除了包名,静态常量等特殊情况,大部分情况下标识符使用骆驼法则,即单词之间不使用特殊符号分割,而是通过首字母大写来分割。 3.2 Java Doc 表明类、域和方法等的意义和用法等的注释,要以javadoc的方式来写。Java Doc是个类的使用者来看的,主要介绍 是什么,怎么用等信息。 凡是类的使用者需要知道,都要用Java Doc 来写。非Java Doc的注释,往往是个代码的维护者看的,着重告述读者为什么这样写,如何修改,注意什么问题等。

    34240

    相关产品

    • 代码签名证书

      代码签名证书

      腾讯云代码签名证书(CSC)提供各平台程序的签名服务,标识软件或代码的来源以及软件开发者的真实身份,同时保证软件不被恶意篡改。签名后的软件,在下载安装时不会弹出安全警告,用户能够有效的辨别该软件的可信度,从而建立良好的软件品牌信誉度。

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券