![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java SE
文章平均质量分 91
Java SE
Nicholas___
这个作者很懒,什么都没留下…
展开
-
synchronized和volatile
1、synchronized当多个线程同时访问一个对象的同步方法时,同一时间只能有一个线程得到执行,其他线程必须等待当前线程执行完之后再依次执行。当有线程正在执行一个对象的同步方法时,其他线程仍可访问此对象的非同步方法。当有线程正在执行一个对象的同步方法时,其他线程不能访问此对象的任意一个同步方法。因为当有线程开始执行一个对象的同步代码块或同步方法,它就获取到了此对象的对象锁,此时其他线程对该加锁对象的所有同步代码部分的访问都将被阻塞。2、volatile对于并发编程来说,线程间通信和线程原创 2021-08-31 11:07:33 · 244 阅读 · 0 评论 -
HashMap和Hashtable的区别
HashMap允许用null作为键值对的键或值。Hashtable不允许,在存键为null或值为null的键值对时会抛出NullPointerExceptionHashMap为线程非安全。Hashtable为线程安全,Hashtable的方法用synchronized修饰HashMap循环遍历只有一组方法,这个两个方法是由Map接口提供的。keySet()返回键的Set集合 values()...原创 2020-02-18 10:37:54 · 89 阅读 · 0 评论 -
类访问修饰符
类内部 同一个包 子类 任何地方public y y y yprotected y y ydefault y yprivate ypublic和protected都可以作用于子类,即被子类重写。父类和子类存在同名静态方法时访问的是父类的方法,子类并不能覆盖父类的方法...原创 2020-02-18 10:21:04 · 157 阅读 · 0 评论 -
牛客网刷题
2019年9月nowcoder刷题记录关于负数取余的运算,结果的符号和被除数相同———————————————————————————————————构造方法名必须与类名相同。方法名可以与类名相同———————————————————————————————————关于构造方法的调用:在类的其他构造方法中可以用this()的方式调用本类中其他构造方法在一个类的子类中可以通过super...原创 2020-02-18 10:15:08 · 380 阅读 · 0 评论 -
冒泡排序
int[] nums = new int[]{3, 36, 22, 5, 87};for (int i = 0; i < nums.length - 1; i++) { for (int j = 0; j < nums.length - 1 - i; j++) { if (nums[j] > nums[j+1]) { in...原创 2020-02-13 16:42:54 · 61 阅读 · 0 评论 -
选择排序
int[] nums = new int[]{3, 36, 22, 5, 87};for (int i = 0; i < nums.length - 1; i++) { int minIndex = i; for (int j = i + 1; j < nums.length; j++) { if (nums[j] < nums[minI...原创 2020-02-13 17:38:14 · 82 阅读 · 0 评论 -
快速排序
static int i = 1; public static void main(String[] args) { int[] arr = new int[] {9, 5, 7, 2, 6, 4}; quickSort(arr, 0, arr.length - 1); System.out.println(Arrays.toStri...原创 2020-02-14 14:52:48 · 93 阅读 · 0 评论 -
网络编程
Socket:计算机操作系统用于网络通讯的端点传输层实现端到端的通信,因此,每一个传输层连接有两个端点。那么,传输层连接的端点是什么呢?不是主机,不是主机的IP地址,不是应用进程,也不是传输层的协议端口。传输层连接的端点叫做套接字(socket)。根据RFC793的定义:端口号拼接到IP地址就构成了套接字。套接字实际上是一个通信端点。例如,如果IP地址是210.37.145.1,而端口号是23,...原创 2020-02-16 12:10:29 · 139 阅读 · 0 评论