随笔都是学习笔记
随笔仅供参考,为避免笔记中可能出现的错误误导他人,请勿转载。
posts - 398,comments - 0,views - 13万
02 2022 档案
Java之反射
摘要:反射: 反射之中的所有核心操作都是通过Class类展开的,可以说Class类是反射的根源所在,那么获取Class类的实例化对象,可以采用三种方式实现; 首先观察java.lang.Class类的定义: 【JDK1.0】:public final class Class<T> extends Obje 阅读全文
posted @ 2022-02-27 11:17 时间完全不够用啊 编辑
Java之用户登录简单案例
摘要:思路: 首先是键盘的输入,然后是字符的匹配加上基本的逻辑判断。 代码实现: 首先是接口规范: public interface IUserMessage { // 规范设置用户信息的类 public boolean setMessage(); } public interface IMnu { // 阅读全文
posted @ 2022-02-26 18:06 时间完全不够用啊 编辑
Java之统计奇偶数改进(可重复输入)
摘要:(说明一下,输入的时候开头不能有空格,可以在getOdevity()方法中捕获一下异常就不会停止程序了,就懒得重新改了)下面是使用了空格开头的格式。 说明: 改进加上了选项类: 选项一:就是上一个案例中的,对输入的多个数字进行统计(可以统计多位数,只要是空格分开的就算一个数字) 选项二:对输入的一串 阅读全文
posted @ 2022-02-25 17:09 时间完全不够用啊 编辑
Java之输入一串数据判断其中的奇偶数个数
摘要:思路: 字符的分割和类型的转换; 首先是接口的规范: public interface IInputNumber { // 从键盘获取数据 public String[] inputNum(); } public interface IGetOdevity { // 获取奇偶数 public int 阅读全文
posted @ 2022-02-25 16:15 时间完全不够用啊 编辑
Java之输入学生信息并保存在指定文件夹中
摘要:设计思路: 需要考虑的是信息的存储,显示。 首先是接口规范的定义: public interface ISetStudent { // 规范学生信息设置类 public Student[] setStudentsArray(Student[] stuArray,Student student, in 阅读全文
posted @ 2022-02-24 14:34 时间完全不够用啊 编辑
Java之输入比较个数并输出排序后的数组
摘要:设计思路: 比较器首先Comparable<T>,并使用Array.sort()进行排序,最后使用Array.toString()进行输出显示。 代码实现: 首先进行学生类的创建,学生类进行接口Comparable<T>的实现。 public class Student implements Com 阅读全文
posted @ 2022-02-24 11:24 时间完全不够用啊 编辑
Java之向一个文件中输入内容然后保存在固定的目录中
摘要:题目: 向一个文件中输入内容然后保存在固定的目录中。 实现: 创建路径类: import java.io.File; import java.io.IOException; import java.util.Scanner; public class FileCreate { // 创建目录和文件 阅读全文
posted @ 2022-02-23 15:02 时间完全不够用啊 编辑
Java之数字比较
摘要:要求: 输入指定个数的数字,然后比较大小并输出最大值和最小值。 实现: import java.util.Scanner; interface INumberCase{ // 设置一个接口处理数字 public double[] caseNumber(int count); // count是输入数 阅读全文
posted @ 2022-02-21 16:01 时间完全不够用啊 编辑
Java之transient关键字
摘要:默认情况下当执行了对象序列化的时候,会将类中的全部属性的内容进行全部的序列化,但是很多情况下,有一些属性并不需要序列化的处理,所以只需要在属性上定义transient关键字就可以了。 例如: private transient String name; 在这个时候在进行序列化处理的时候,name属性 阅读全文
posted @ 2022-02-21 14:42 时间完全不够用啊 编辑
Java之对象序列化
摘要:序列化: 所谓的对象序列化指的是将内存中保存的对象以二进制数据流的形式进行处理,可以实现对象的保存或者是网络传输, 对象序列化是一个重要的概念,但是在开发之中对象序列化并不麻烦,因为序列化的时候用户只需要标注可序列化的对象,然后系统会帮助用户进行序列化; 但是并不是所有的对象都可以被序列化,在jav 阅读全文
posted @ 2022-02-21 10:22 时间完全不够用啊 编辑
Java之Scanner扫描流
摘要:Scanner(java.util): 是JDK1.5之后追加的一个程序类,目的是解决输入流的访问问题,可以理解为BufferedReader的替代功能类。 Scanner中有下面几种操作方法: 构造: public Scanner(InputStream source); 判断是否有数据: pub 阅读全文
posted @ 2022-02-19 17:20 时间完全不够用啊 编辑
Java之BufferedReader缓冲输入流
摘要:BufferedReader: 缓冲字符输入流,这个类可以很好地解决输入流数据的读取问题,此类是最早时候提供最完善的数据输入处理(JDK 1.5之前),在JDK 1.5之后出现了另外的更强大的类; 这个类之中提供了一个重要的方法: 读取一行数据: public String readLine() t 阅读全文
posted @ 2022-02-19 16:18 时间完全不够用啊 编辑
Java之System类对IO的支持
摘要:System系统类: System类中有三个常量: 标准输出(显示器): public static final PrintStream out; 错误输出: public static final PrintStream err; 标准输入(键盘): public static final Inp 阅读全文
posted @ 2022-02-19 15:55 时间完全不够用啊 编辑
Java之打印流
摘要:打印方法的设计思想: 提高已有类的功能(装饰设计模式)。 例如:OutputStream是唯一可以实现输出操作的标准类,所以应该以其为核心根本,但是这个类输出的操作有限,不方便进行各种类型的输出操作, 那么就对它做出了一层包装(没有脱离其本质,但是功能更加强大,就像钢铁侠本质是人,但是穿上了装甲变得 阅读全文
posted @ 2022-02-19 15:14 时间完全不够用啊 编辑
Java之RandomAccessFile随机读写类
摘要:RandomAccessFile: RandomAccessFile的数据最重要的一点就是:数据的结构一致。 RandomAccessFile类里面定义有如下的操作方法: 构造方法:public RandomAccessFile(File file,String mode) throwsFileNo 阅读全文
posted @ 2022-02-18 16:32 时间完全不够用啊 编辑
Java之管道流
摘要:作用: 实现两个线程之间的IO处理操作。 由此可知,管道流也是分为字符流和字节流: 字节管道流: PipedOutputStream、PipedInputStream; - 连接处理: public void connect(PipedInputStream snk) throws IOExcept 阅读全文
posted @ 2022-02-18 15:54 时间完全不够用啊 编辑
Java之内存操作流
摘要:文件操作流: 现在想要实现IO操作,但是不想产生文件(临时文件)。可以以内存为终端进行操作。 内存操作流: 在Java里面提供有两类的内存操作流: 字节内存操作流:ByteArrayOutputStream、ByteArrayInputStream· 字符内存操作流:CharArrayWriter、 阅读全文
posted @ 2022-02-17 15:38 时间完全不够用啊 编辑
Java之字符编码
摘要:原因: 计算机中只存在0、1字节数据,不同的语言需要用0或1进行不同的组成,这就是编码。 那么在编码后就需要解码,要想显示正确的内容,编码和解码就需要进行对应,如果编码和解码不对应则会出现乱码。 那么在实际的开发之中对于常用的编码有如下几种: - GBK/GB2312: 国标编码,可以描述中文信息, 阅读全文
posted @ 2022-02-17 15:09 时间完全不够用啊 编辑
Java之简单的文件拷贝案例
摘要:需求分析: - 需要实现文件的拷贝操作,那么这种拷贝就有可能拷贝各种类型的文件,所以使用字节流; - 在进行拷贝的时候有可能需要考虑到大文件的拷贝问题; 方案设计: - 方案一:一次性全部拷贝; |- 如果拷贝的文件很大则此方法不可取,会导致程序崩溃 - 方案二:读取一部分输出一部分; 核心的操作: 阅读全文
posted @ 2022-02-17 13:47 时间完全不够用啊 编辑
Java之IO流
摘要:流的概念: 在程序的开发中IO的核心就是:输入和输出。 输入和输出是相对的,可能来自不同的环境。 对于服务器或者是客户端而言,传递的就是一种数据流的处理形式,而所谓的数据流指的就是字节数据。 这种的处理形式在java.io包里提供了两类支持: - 字节处理流:OutputStream(输出字节流)、 阅读全文
posted @ 2022-02-16 16:12 时间完全不够用啊 编辑
Java之File类
摘要:构造方法: public File(String pathname); // 文件的完整路径 public File(File parent, String child); // 父路径和子路径 创建文件方法: public boolean createNewFile() throws IOExce 阅读全文
posted @ 2022-02-14 10:40 时间完全不够用啊 编辑
Java之email验证
摘要:package Demo_2_12_email验证案例; public class VerifyEmail { private final String REGEX = "[a-zA-Z0-9]\\w+@[a-zA-Z0-9]+\\.(cn|com|com.cn|net|gov)+"; public 阅读全文
posted @ 2022-02-12 15:03 时间完全不够用啊 编辑
Java之抛硬币
摘要:import java.util.Random; class Coin{ private int one = 0; private int zero = 0; private Random random = new Random(); public void throwCoin(int count) 阅读全文
posted @ 2022-02-12 15:02 时间完全不够用啊 编辑
Java之红黑树
摘要:基本结构: > 每个节点或者是黑色,或者是红色;> 根节点必须是黑色; > 每个叶子节点是黑色﹔ Java实现的红黑树将使用null 来代表空节点,因此遍历红黑树时将看不到黑色的叶子节点,反而看到每个叶子节点都是红色的; > 如果一个节点是红色的,则它的子节点必须是黑色的:(红节点不能连接红节点,但 阅读全文
posted @ 2022-02-11 15:15 时间完全不够用啊 编辑
Java之二叉树结构
摘要:结构理解: 将第一个节点作为根节点,通过某一条件,大于的放在右子树,小于的放在左子树。此时进行查询的话时间复杂度就是O(logn),因为在查询的时候不会进行整个结构的查询。 二叉树中有三种遍历方式:前序遍历、中序遍历、后序遍历。 二叉树的基础实现: 实现二叉树的关键在于数据的保存,并且会涉及到数据的 阅读全文
posted @ 2022-02-11 11:31 时间完全不够用啊 编辑
Java之Comparable(比较接口)
摘要:package Demo_2_7_Comparable比较接口; import java.util.Arrays; public class Main { public static void main(String[] args) { Person[] data = new Person[]{ n 阅读全文
posted @ 2022-02-07 20:43 时间完全不够用啊 编辑
Java之Base64加密与解密
摘要:package Demo_2_6_Base64加密与解密; import java.nio.charset.StandardCharsets; import java.util.Base64; public class Main { public static void main(String[] 阅读全文
posted @ 2022-02-06 23:27 时间完全不够用啊 编辑
Java之TimerTask定时任务
摘要:实现与继承关系: 代码测试: package Demo_2_6_定时任务处理; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Timer; import java.util.TimerTask; 阅读全文
posted @ 2022-02-06 23:02 时间完全不够用啊 编辑
Java之ThreadLocal类(线程引用的安全传递)
摘要:ThreadLocal类的设计流程: 通常情况下,我们创建的变量是可以被任何一个线程访问并修改的。而使用ThreadLocal创建的变量只能被当前线程访问,其他线程则无法访问和修改,这就是ThreadLocal类的作用。 使用ThreadLocal类解决同步问题: class Channel { / 阅读全文
posted @ 2022-02-06 22:26 时间完全不够用啊 编辑
Java之Optional类
摘要:Optional中的方法 代码测试 import java.util.Optional; /* Optional类(JDK1.8提供)的主要功能是进行null的相关处理,在以前进行程序开发的时候,为了防止程序出现null指向异常,往往追加有null的验证; 传统的引用传递:在引用接收的一方都是被动的 阅读全文
posted @ 2022-02-05 18:30 时间完全不够用啊 编辑
Java之UUID类(自动生成字符串)
摘要:具体内容 import java.util.UUID; /* * UUID是一种生成无重复字符串的程序类,这种程序类的主要内容是根据时间戳实现一个自动的无重复字符串(相对而言) * 一般在获取UUID的时候都是随机生成一个内容: * - 获取UUID对象:public static UUID ran 阅读全文
posted @ 2022-02-05 17:52 时间完全不够用啊 编辑
Java之读取资源后的格式化文本
摘要:资源的修改: 【中文资源】Zookper.Me_zh_CN.properties # 注释信息info = 你好{0}同学!当前日期:{1}. 【英文资源】Zookper.Me_en_US.properties info = Hello {0}! data:{1} 如果有需要也可以进行{1}、{2} 阅读全文
posted @ 2022-02-05 12:14 时间完全不够用啊 编辑
Java之国际化程序设计
摘要:实现国际化程序 依靠资源文件、Locale类、ResourceBundle类就可以完成国际化程序操作: 核心观念:读取资源信息 实现操作: 创建中文资源和英文资源文件: import java.util.ResourceBundle; public class Main { public stati 阅读全文
posted @ 2022-02-05 11:59 时间完全不够用啊 编辑
Java之ResourceBundle类进行资源读取
摘要:已经准备好了资源文件,那么随后就需要进行资源的读取,需要java.util.ResourceBoundle类完成。 public abstract class ResourceBundle extends Object 这个类是一个抽象类,理论上是可以使用它提供的一个static方法来完成: - 获 阅读全文
posted @ 2022-02-05 11:30 时间完全不够用啊 编辑
Java之国际化程序语言和区域编码
摘要:不同国家的语言不同,但是程序的核心业务不变,那么就需要在语言上进行分类获取,通过独有的接口来获取不同国家的区域编码,以此来实现语言的改变。 Locale类 在java.util包中有一个专门描述区域和编码的类:Locale类 构造方法: public Locale(String language); 阅读全文
posted @ 2022-02-05 11:11 时间完全不够用啊 编辑
Java之正则表达式
摘要:正则表达式: 正则的使用方便于验证应用 package Demo_2_4_正则表达式; public class Main { public static void main(String[] args) { String str = "1234"; if (str.matches("\\d+")) 阅读全文
posted @ 2022-02-04 17:14 时间完全不够用啊 编辑
Java之Date类
摘要:Date日期类: Date中得出的数据都是long型的,所以需要日期与long类型的相互转换的方法: - 将long转为Date: public Date(long date); import java.util.Date; public class Main { public static voi 阅读全文
posted @ 2022-02-03 18:43 时间完全不够用啊 编辑
Java之大数字类
摘要:直接上操作,BIgInteger import java.math.BigInteger; public class Main { public static void main(String[] args) { BigInteger big1 = new BigInteger("432134234 阅读全文
posted @ 2022-02-03 18:23 时间完全不够用啊 编辑
Java之对象克隆
摘要:对象克隆: 这个操作少出现。 使用相同内容创建一个新的对象。 使用Object类中的clone()方法。 所有的类都会继承Object父类,所以所有的类都会有clone()的方法,但是并不是所有的类都希望被克隆。 所以如果要想实现对象的克隆,对象所在的类需要实现一个Cloneable接口,此接口没有 阅读全文
posted @ 2022-02-03 14:58 时间完全不够用啊 编辑
Java之Cleaner
摘要:介绍: Cleaner是JDk1.9之后提供的一个对象清理操作,主要的功能是进行finialize()方法的替代。 输入Java因为自身JVM的特性不用用户自己去回收垃圾,但是仍然存在此类操作。 public class Member { public Member(){ System.out.pr 阅读全文
posted @ 2022-02-03 14:42 时间完全不够用啊 编辑
Java之System
摘要:System: - 数组拷贝: public static void arraycopx(Object src. int srcPos, Object dest,int destPos. int length); - 获取当前的日期时间数值: public static long currentTi 阅读全文
posted @ 2022-02-03 14:14 时间完全不够用啊 编辑
Java之Runtime
摘要:Runtime分析: Runtime类属于单例设计模式;如果想要获取实例化对象,那么就可以依靠类中的getRuntime()方法。 - 获取实例化对象:public static Runtime getRuntime(); public class Main { public static void 阅读全文
posted @ 2022-02-03 14:00 时间完全不够用啊 编辑
Java之AutoCloseable
摘要:AutoCloseable: 用在资源开发,进行资源的自动关闭,以防止浪费。 手动模拟消息的连接、发送、关闭: public interface IMessage { public void send(); // 消息发送 } public class Message implements IMes 阅读全文
posted @ 2022-02-03 12:08 时间完全不够用啊 编辑
Java之CharSequence
摘要:CharSequence: 是一个描述字符串结构的接口,有(并非只有)三种常用的子类: - String - StringBuffer - StringBuilder String StringBuffer StringBuilder public final class String extend 阅读全文
posted @ 2022-02-03 11:48 时间完全不够用啊 编辑
Java之StringBuffer
摘要:一、 String类缺少字符串的修改功能,所以提供了StringBuffer类。 StringBuffer要像普通的类那样进行对象的创建,然后进行调用方法的处理; - 构造方法:public StringBuffer(); - 构造方法:public StringBuffer(String s); 阅读全文
posted @ 2022-02-03 11:31 时间完全不够用啊 编辑
Java之向多线程的竞猜抢答案例
摘要:思路: 在程序的设计过程中涉及到了数据的返回,所以选择callable接口来实现较为方便。 代码实现: package Demo_2_3_多线程的竞猜抢答; import java.util.concurrent.Callable; public class MyThread implements 阅读全文
posted @ 2022-02-03 10:45 时间完全不够用啊 编辑
Java之多线程的电脑生产
摘要:思路: 和生产者消费者模型一样。 public class Computer { private static int count = 0; // 生产的个数 private String name; // 电脑的名称 private double price; // 电脑的价格 public Co 阅读全文
posted @ 2022-02-02 20:54 时间完全不够用啊 编辑
Java之多线程的数字加减案例(同步,等待与唤醒)
摘要:多线程控制数字的加减: 线程控制数字的加减过程应该是一个加一个减,这个和消费者模型有点像,加了后再减,加减不同同时进行,所以存在同步的问题。 /* 定义一个操作资源 * 这个类用来创建数值和加减切换开关还有加减的操作 * 其它线程类则创建这个类的属性来进行关联,并调用这个类中的方法实现加减的操作。 阅读全文
posted @ 2022-02-02 17:32 时间完全不够用啊 编辑
Java之volatile关键字
摘要:作用: volatile关键是主要是定义在属性上,表示此属性直接为数据操作,不做副本拷贝的处理。 正常的变量处理步骤: - 获取变量原有的数据内容副本; - 利用副本为变量进行数学计算; - 将计算后的变量,保存到原始空间之中。 而如果一个属性上追加了volatile关键字表示: 不适用副本,直接操 阅读全文
posted @ 2022-02-02 17:26 时间完全不够用啊 编辑
Java之后台守护线程
摘要:理解: 我们知道,进程可以理解为一个公司,而线程则可以理解为公司的员工,当需要进行某个功能的执行时,公司就会启动运作,公司中的员工就各司其职进行工作,那么守护线程怎么理解呢? 通过字面意思可以这样理解,既然是守护,那么肯定守护线程是与被守护的线程同时存在且同时工作,如果被守护的员工(线程)死亡(停止 阅读全文
posted @ 2022-02-02 16:02 时间完全不够用啊 编辑
Java之停止线程
摘要:一、 对于多线程的启动一定是Thread类中的start()方法,而如果需要进行多线程的停止处理,Thread类原本提供了stop()方法,但是对于这个方法从JDK1.2开始就已经将其废除了,而除了stop()以外还有几个方法也被禁用了。 - 停止多线程: - 销毁多线程: - 挂起线程(暂停执行) 阅读全文
posted @ 2022-02-01 20:01 时间完全不够用啊 编辑
Java之线程的生产者与消费者模型
摘要:设计思路: 通过Runnable实现线程类,通过Message实现生产者与消费者的联系。 初步测试: // 消费者类 public class Consumer implements Runnable{ private Message msg; public Consumer(Message msg 阅读全文
posted @ 2022-02-01 19:29 时间完全不够用啊 编辑

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示