一、首先要明白Semaphore和线程池各自是干什么? 信号量Semaphore是一个并发工具类,用来控制可同时并发的线程数,其内部维护了一组虚拟许可,通过构造器指定许可的数量,每次线程执行操作时先通过acquire方法获得许可,执行完毕再通过release方法释放许可。如果无可用许可,那么acqu ...
分类:
编程语言 时间:
2020-02-05 11:53:15
阅读次数:
154
可变参数 不知道可能给方法传递多少个参数时使用这个方法 public void printInfo (String[] args) --可以定义一个数组,在调用这个方法适合赋值给一个数组 public void aaa (String... args) --用java特有的...来传递可变个数的参数 ...
分类:
编程语言 时间:
2020-02-04 15:49:42
阅读次数:
67
图的表示方式: 邻接矩阵 邻接表 图的代码实现:123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051import java.util.ArrayList;import... ...
分类:
编程语言 时间:
2020-02-04 14:03:54
阅读次数:
75
/ 一、Java面向对象学习的三条主线: 1.Java类及类的成员:属性、方法、构造器;代码块、内部类 2.面向对象的三大特征:封装性、继承性、多态性、(抽象性) 3.其它关键字:this、super、static、final、abstract、interface、package、import等 ...
分类:
其他好文 时间:
2020-02-04 14:03:41
阅读次数:
61
字符串创建 1. String 应用变量名 = ‘字符串内容’’; 2. String 引用变量名 = new( ); 常用构造器 ||| | | | |String(byte[] bytes)|将字节数组bytes按照默认的编码方式构造一个字符串对象| |String(byte[] bytes,i ...
分类:
编程语言 时间:
2020-02-03 22:53:43
阅读次数:
145
本文介绍RecyclerView的使用入门。这里给出一种比较常见的使用方式。 "Android教程2020 系列总览" "本文链接" 想必读者朋友对列表的表现形式已经不再陌生。手机上有联系人列表,文件列表,短信列表等等。 本文讲述的是在Android开发中用RecyclerView来实现列表效果。 ...
分类:
移动开发 时间:
2020-02-03 11:39:20
阅读次数:
113
Java语言提供了很多类初始化的方法,包括构造器、初始化器等。除了这两种方法之外,我们还可以用 初始化块(initialization block) 来实现初始化功能。 基本语法 初始化块是出现在类声明中的语句块,它位于所有成员、函数、构造器之外。例如使用静态初始化块,我们的HelloWorld可以 ...
分类:
编程语言 时间:
2020-02-02 19:16:58
阅读次数:
71
\_\_init\_\_和\_\_new\_\_ 一、\_\_new\_\_和\_\_init\_\_ 曾经我幼稚的以为认识了python的\_\_init\_\_()方法就相当于认识了类构造器,结果,\_\_new\_\_()方法突然出现在我眼前,让我突然认识到原来\_\_new\_\_才是老大。 ...
分类:
其他好文 时间:
2020-02-02 17:38:37
阅读次数:
69
对于AlertDialog的相关知识: 1.创建构造器AlertDialog.Builder的对象; 2.通过构造器对象调用setTitle、setMessage、setIcon等方法构造对话框的标题、信息和图标等内容; 3.根据需要调用setPositive/Negative/NeutralBut ...
分类:
移动开发 时间:
2020-02-01 21:16:22
阅读次数:
111
js的函数也是对象,其创建有三种方式:函数声明、函数表达式、函数构造器。 上图中,左边为函数声明,右边为函数表达式。 上图的要点为:函数声明和变量声明会前置,函数表达式不会前置。 上图的要点为: 1.可通过构造器直接新建函数,new可以省略。 2.Function前面的入参为函数入参,最后一个参数为 ...
分类:
编程语言 时间:
2020-01-31 23:08:24
阅读次数:
100