随笔分类 - Java
java基础知识
摘要:Java基础知识 常见面试题: 面向对象和面向过程的区别 Java和C++的区别 JDK、JRE、JVM的区别和联系 字符型常量和字符串常量的区别 Java泛型、类型擦除、常用的通配符? == 和equals的区别 为什么重写equals时必须重写hashCode方法? 基本数据类型,包装类、各种类
阅读全文
摘要:单例模式 饿汉式单例 public class Hungry{ private Hungry(){} //构造器私有 private static Hungry HUNGRY = new Hungry(); public Hungry getInstance(){ return HUNGRY; }
阅读全文
摘要:一道题串联lambda表达式、链式编程、函数式接口、Stream流式计算 题目: 题目要求:一分钟内完成此题,只能用一行代码实现! 现在有5个用户!筛选: 1、ID 必须是偶数 2、年龄必须大于23岁 3、用户名转为大写字母 4、用户名字母倒着排序 5、只输出一个用户! 用户类: public cl
阅读全文
摘要:1-2 锁 /** * 8锁问题,就是关于锁的8个问题!,判断锁的是谁 */ import java.util.concurrent.TimeUnit; /** * 1.标志情况下,两个线程先打印,发短信? 打电话? * 2.sendSms延迟4秒,两个线程先打印,发短信? 打电话? */ publ
阅读全文
摘要:Java中的生产者消费者问题 一、生产者消费者问题 概念 生产者消费者模式就是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直接通讯,而通过阻塞队列来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给阻塞队列,消费者不找生产者要数据,而是直接从阻塞队列里取,阻塞队
阅读全文
摘要:
阅读全文
摘要:注解(Annotation) 注解入门 Annotation是JDK5.0开始引入的技术Annotation的作用:不是程序本身,可以对程序作出解释可以被其它程序(比如编译器)读取。Annotation的格式:注解是以"@注释名"在代码中存在,还可以添加一些参数值,例如:@SuppressWarni
阅读全文
摘要:TCP通信 TCP聊天器 Server端 package Socket.demo02; import java.io.*; import java.net.*; public class server { public static void main(String args[]) { System
阅读全文
摘要:总结 IO概述 什么是IO 生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按
阅读全文
摘要:线程简介 任务进程**进程(Process)**是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础,每个应用程序就是一个进程。线程**线程(thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指
阅读全文
摘要:Map集合 1.1 概述 现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。我们通过查看Map接口描述,发现Map接口下的集合与
阅读全文
摘要:Collections 1.1 常用功能 java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下: public static <T> boolean addAll(Collection<T> c, T... elements):往集合中添加一些元素。 publi
阅读全文
摘要:Set接口 java.util.Set接口和java.util.List接口一样,同样继承自Collection接口,它与Collection接口中的方法基本一致,并没有对Collection接口进行功能上的扩充,只是比Collection接口更加严格了。与List接口不同的是,Set接口中元素无序
阅读全文
摘要:List接口 我们掌握了Collection接口的使用后,再来看看Collection接口中的子类,他们都具备那些特性呢?接下来,我们一起学习Collection中的常用几个子类(java.util.List集合、java.util.Set集合)。 1.1 List接口介绍 java.util.Li
阅读全文
摘要:案例介绍 按照斗地主的规则,完成洗牌发牌的动作。具体规则:使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。 案例分析 准备牌:牌可以设计为一个ArrayList,每个字符串为一张牌。每张牌由花色数字两部分组成,我们可以使用花色集合与数字集合嵌套迭代完成每张牌的组
阅读全文
摘要:1.泛型概述 泛型:是一种未知的数据类型,当我们不知道使用什么数据类型的时候,可以使用泛型。 在学习集合时,我们都知道集合中是可以存放任意对象的,只要把对象存储集合后,那么这时他们都会被提升成Object类型。当我们在取出每一个对象,并且进行相应的操作,这时必须采用类型转换。 1.1 不使用泛型的弊
阅读全文
摘要:Iterator迭代器 1.1 Iterator接口 在程序开发中,经常需要遍历集合中的所有元素。针对这种需求,JDK专门提供了一个接口java.util.Iterator。Iterator接口也是Java集合中的一员,但它与Collection、Map接口有所不同,Collection接口与Map
阅读全文
摘要:说明:本文及后面博客Java中的集合部分的内容为黑马程序员(传智播客)的学习笔记,课程相关内容版权属黑马程序员(传智播客)。 哔哩哔哩视频链接:https://www.bilibili.com/video/BV1Ak4y1o7y8?from=search&seid=29165633013427130
阅读全文
摘要:Objects类 重写toString方法 package tools.Object; import java.util.Objects; public class Person { private String name; private int age; public Person() { }
阅读全文
摘要:异常 参考:https://www.cnblogs.com/achievement-active/p/9304293.html**检查性异常:**用户错误或问题引起的问题,测试解决;**运行时异常:**运行时异常实可能被程序员避免的异常;**错误:**错误不是异常,而是脱离程序员控制的问题。 处理异
阅读全文