随笔分类 -  Java学习

摘要:详解Java继承 阅读全文
posted @ 2020-05-07 21:51 一转身已万水千山 阅读(225) 评论(0) 推荐(0)
摘要:public static void main(String[] args) throws IOException, InterruptedException { WatchService watchService = FileSystems.getDefault().newWatchService 阅读全文
posted @ 2019-11-20 15:44 一转身已万水千山 阅读(441) 评论(0) 推荐(0)
摘要:通过对文件的拷贝来对比传统IO流和NIO流 将底层流封装成处理流以后进行分段读取。 /*将本身源代码拷贝到TXT文件*/ public class TraditionIO { public static void main(String[] args) { try(BufferedReader br 阅读全文
posted @ 2019-11-18 16:10 一转身已万水千山 阅读(487) 评论(0) 推荐(0)
摘要:import java.io.FileReader; import java.io.PushbackReader; public class PushbackTest { public static void main(String[] args) { try(PushbackReader pr = 阅读全文
posted @ 2019-11-17 11:24 一转身已万水千山 阅读(353) 评论(0) 推荐(0)
摘要:Comparable接口提供比较对象大小功能,实现了此接口的类的对象比较大小将通过接口提供的compareTo方法。 此方法的返回int类型,分三种情况。 返回正数,当前对象大于目标对象 返回负数,当前对象小于目标对象 返回0,当前对象等于目标对象 TreeSet提供了将对象排序功能(默认升序排序) 阅读全文
posted @ 2019-11-12 16:47 一转身已万水千山 阅读(263) 评论(0) 推荐(0)
摘要:Java中的闭包与回调可以通过成员内部类来实现。 简单的来说闭包就是返回一个内部类对象,这个内部类对象包含了外部类对象的信息(因为一个内部类对象定依托于一个外部类对象)。 回调就是在闭包的基础上实现的,返回的内部类对象可以调用外部类中的方法。 例子:(不是很具有代表性) public class C 阅读全文
posted @ 2019-11-11 16:47 一转身已万水千山 阅读(691) 评论(0) 推荐(0)
摘要:一、题目描述: 一道Java笔试题。将字符串按给定的字节数进行分割,输出分割后的字符串。要求汉字不能进行拆分,如“a中国”不能拆分成“a+中的一半”。 二、解题思路: 首先利用String类的substring函数逐一取出字符,然后可以通过将字符转换为字节数组,判断大小并累加至计数器,如满足条件则输 阅读全文
posted @ 2019-11-10 09:40 一转身已万水千山 阅读(2728) 评论(0) 推荐(0)
摘要:List Set Map 阅读全文
posted @ 2019-08-23 09:50 一转身已万水千山 阅读(550) 评论(0) 推荐(0)
摘要:容器总体结构 Map存储键值对的数据结构是“数组+链表”的结构,结合了数组查询数据快和链表增删数据快的优点;用Entry[]存储键值对,Entry为类类型,类里面有四个属性:hash、K、V、next,分别存储哈希值、键对象、值对象、下一个Entry对象引用。 Entry底层源码 Entry对象存储 阅读全文
posted @ 2019-08-21 12:53 一转身已万水千山 阅读(5552) 评论(0) 推荐(0)
摘要:Java中很重要的一个知识点就是所有类都默认继承Object类,所以创建的每一个类都继承了Object的方法,所有类都可以向上转型为Object类对象,当然可以重写Object里面的常用方法,有时候重写是十分必要的,比如重写Object类的equals方法和toString方法;原始equals方法 阅读全文
posted @ 2019-08-14 17:40 一转身已万水千山 阅读(334) 评论(0) 推荐(0)
摘要:File类的基本用法 java.io.File类:代表文件和目录。在开发中,读取文件、生成文件、删除文件、修改文件的属性时经常会用到此类。 File类的常用构造方法:public File(String pathname) 以pathname为路径创建File对象,如果pathname是相对路径,则 阅读全文
posted @ 2019-08-06 12:53 一转身已万水千山 阅读(1991) 评论(0) 推荐(0)
摘要:String String变量是不可变的,源码里面用了final修饰。 StringBuilder线程不安全,但效率高,常用。 StringBuffer线程安全,但效率低。 阅读全文
posted @ 2019-08-05 19:50 一转身已万水千山 阅读(423) 评论(0) 推荐(0)
摘要:包装类的基本概念: Java是面向对象的语言,但并不是“纯面向对象”的,因为我们经常用到的基本数据类型就不是对象。但是我们在实际应用中经常需要将基本数据转化成对象,以便于操作。比如:将基本数据类型存储到Object[]数组或集合中的操作等等。 为了解决这个不足,Java在设计类时为每个基本数据类型设 阅读全文
posted @ 2019-08-05 12:33 一转身已万水千山 阅读(314) 评论(0) 推荐(0)
摘要:ReentrantLock 锁常用于保证程序的人为顺序执行。 写一个类模拟ReentrantLock类的功能 当一个线程不能得到一把锁时就会产生等待,等到其他线程释放锁后其将被唤醒,然后拿到所继续运行。 ReentrantLock的使用 阅读全文
posted @ 2019-07-21 22:31 一转身已万水千山 阅读(322) 评论(0) 推荐(0)
摘要:在Java中,内部类包括:成员内部类(静态内部类、非静态内部类)、匿名内部类、局部内部类(几乎不用)。 1.成员内部类: 1.1非静态成员内部类 成员内部类(可以使用private、default、protected、public任意进行修饰。 非静态内部类必须寄存在一个外部类对象里。因此,如果有一 阅读全文
posted @ 2019-07-20 20:22 一转身已万水千山 阅读(717) 评论(0) 推荐(0)
摘要:在Java多线程环境下ThreadLocal就像一家银行,每个线程就是银行里面的一个客户,每个客户独有一个保险箱来存放金钱,客户之间的金钱不影响。 每个线程都可以通过调用threadLocal.set()方法来设置自己独有的threadLocal值 每个线程都可以通过调用threadLocal.ge 阅读全文
posted @ 2019-07-17 22:06 一转身已万水千山 阅读(158) 评论(0) 推荐(0)
摘要:转载至:https://blog.csdn.net/u012723673/article/details/80682208 关于volatile很重要的一点: 它保证了可见性,即其他线程对volatile的操作本线程可以马上得知。 不加volatile修饰会在子线程内死循环,加了volatile后主 阅读全文
posted @ 2019-07-17 18:21 一转身已万水千山 阅读(138) 评论(0) 推荐(0)
摘要:Timer 本身就是一个线程,最主要的方法就是schedule()。 schedule()的参数介绍: schedule(TimerTask task, long delay) //延迟delay毫秒以后执行任务 schedule(TimerTask task, long delay, long p 阅读全文
posted @ 2019-07-14 09:50 一转身已万水千山 阅读(847) 评论(0) 推荐(0)
摘要:Date Date类不常用,很多方法被废弃了,常用它的两个构造方法来new一个Date对象。 日期格式参照表 GregorianCalendar 打印可视化日历的一个简单例子: 阅读全文
posted @ 2019-07-13 11:20 一转身已万水千山 阅读(7335) 评论(0) 推荐(0)
摘要:信号灯法:以一个标志位来判断是否执行还是等待 阅读全文
posted @ 2019-07-11 09:47 一转身已万水千山 阅读(563) 评论(0) 推荐(1)