文章 39
评论 43
浏览 115081
大白话之Java级联调用:一个类,一条语句,同时调用好几个方法,串成一串

大白话之Java级联调用:一个类,一条语句,同时调用好几个方法,串成一串

前言 之前偶然学习了一下Dart编程语言(不是重点),在学习官方手册时发现一个新的概念:级联调用。这是啥东西? 于是我百度了以后,发现在Java中也有类似的级联调用,那它们的区别又在哪儿呢? -📚-需要先了解的知识-📚- 语言内容链接 Java类、方法、变量null -⭐-评分-⭐- 知识等级实用性罕见性 基础实用少见 上手 级联调用很简单,只要稍微分析下下面的源码,就懂了。 !级联 首先我们不用级联来实现: public class 级联 { public static void main(String[] args) { //实例化Guys Guys guys = new Guys(); //执行方法 guys.boy(); guys.girl(); guys.gentleman(); guys.lady(); } } class Guys { public void girl() { System.out.println("Hey, girl!"); } public void boy() { System.out.println("Oh, boy!"....

大白话之Java级联调用:一个类,一条语句,同时调用好几个方法,串成一串

大白话之Java级联调用:一个类,一条语句,同时调用好几个方法,串成一串

前言 之前偶然学习了一下Dart编程语言(不是重点),在学习官方手册时发现一个新的概念:级联调用。这是啥东西? 于是我百度了以后,发现在Java中也有类似的级联调用,那它们的区别又在哪儿呢? -📚-需要先了解的知识-📚- 语言内容链接 Java类、方法、变量null -⭐-评分-⭐- 知识等级实用性罕见性 基础实用少见 上手 级联调用很简单,只要稍微分析下下面的源码,就懂了。 !级联 首先我们不用级联来实现: public class 级联 { public static void main(String[] args) { //实例化Guys Guys guys = new Guys(); //执行方法 guys.boy(); guys.girl(); guys.gentleman(); guys.lady(); } } class Guys { public void girl() { System.out.println("Hey, girl!"); } public void boy() { System.out.println("Oh, boy!"....

大白话之Java多线程join方法:开局一张图,试学一分钟,你就费和我一样,理解介个方法

大白话之Java多线程join方法:开局一张图,试学一分钟,你就费和我一样,理解介个方法

前言 有次偶尔接触到了Thread.join()方法,便到网上去查阅相关资料,但也是看得我一头雾水(天下文章一般抄)。在我很久的理解之后,便想将我理解的join()方法以一张图的方式解释出来。 要学习本篇文章,你需要理解以下知识: 多线程 & Thread (点我学习) 仔细看 开局扔张图: 我绘制的这张图以时间线的形式解释了主线程和各个被实例化的John线程的运行过程。 别着急,多看两遍! 我们可以看到,在主线程调用了join()方法后,指定的线程会被抓回来在后边老老实实地排队。 猜一下 问:请回答未执行join()方法和执行了join()方法的运行结果有什么不同(可能有几种结果、运行的时间、输出的顺序)? 💡—!> 答: 类型可能结果数量运行速度输出顺序时间复杂度(最好) 不使用join()6种快(多线程)乱序O(1) 使用join()1种慢(单线程)顺序O(n) Q&A 看完后,你可能还会有些疑问: Q:为什么不使用join()的可能结果数量是6种?输出顺序为什么是乱序? A:由于多线程的原因,虽然start()顺序执行了线程1/2/3,....

大白话之AutoClosable接口 | try-with-resources:JDK1.7的新特性,提高重复回收效率

大白话之AutoClosable接口 | try-with-resources:JDK1.7的新特性,提高重复回收效率

前言 无论是使用文件IO流,还是网络Socket流,都免不了调用close()将流关闭。如果需要操作的流过多,就会导致混乱。 一旦忘记将关闭方法放到finally中,很有可能出现流未被关闭,占用大量内存空间的问题。 流程简化 对比 try-catch-finally AC ac = null; AC2 ac2 = null; try { ac = new AC(); ac2 = new AC2(); } catch (Exception e) { } finally { ac.close(); ac2.close(); } try-with-resources try (AC ac = new AC(); AC2 ac2 = new AC2()) { } catch (Exception e) { } 可以很明显的看到,try-with-resources会自动调用类中的close()方法,简化了流程,提高了代码的整洁度。 AutoCloseable AutoCloseable是Java的内置接口,继承这个接口并且按要求新建close()方法,该类就能被try-with-res....

大白话之AutoClosable接口 | try-with-resources:JDK1.7的新特性,提高重复回收效率

大白话之AutoClosable接口 | try-with-resources:JDK1.7的新特性,提高重复回收效率

前言 无论是使用文件IO流,还是网络Socket流,都免不了调用close()将流关闭。如果需要操作的流过多,就会导致混乱。 一旦忘记将关闭方法放到finally中,很有可能出现流未被关闭,占用大量内存空间的问题。 流程简化 对比 try-catch-finally AC ac = null; AC2 ac2 = null; try { ac = new AC(); ac2 = new AC2(); } catch (Exception e) { } finally { ac.close(); ac2.close(); } try-with-resources try (AC ac = new AC(); AC2 ac2 = new AC2()) { } catch (Exception e) { } 可以很明显的看到,try-with-resources会自动调用类中的close()方法,简化了流程,提高了代码的整洁度。 AutoCloseable AutoCloseable是Java的内置接口,继承这个接口并且按要求新建close()方法,该类就能被try-with-res....

死钻技术 | 绝不抄袭