随笔分类 -  javase

java基础学习
摘要:稀疏数组的特点:1、第一行存储的是二维数组的信息,第一列二维数组的行数,第二列是二维数组的列数,第三列是二维数组的有效值的个数2、稀疏数组的行数,为二维数组的有效个数的总数+1,稀疏数组的列数是33、稀疏数组的第一列存储的二维数组的有效值的行的索引,第二列存储的二维数组的有效值的列的索引,第三列是二 阅读全文
posted @ 2020-04-16 15:19 dirsoen 阅读(186) 评论(0) 推荐(0)
摘要:Optional实际上是个容器,它是一个装一个对象的容器。这个对象可能是个空,可能是非空。 Optional类可以使用来避免NullPointerException,避免频繁的判段对象为null的过程 1、创建Optional对象的方法: (1)Optional.of(xx); 只能装非空对象 (2 阅读全文
posted @ 2020-04-08 10:46 dirsoen 阅读(262) 评论(0) 推荐(0)
摘要:StreamAPI是用来处理数据,处理集合等容器中的数据,处理操作有:查询、筛选、删除、过滤、统计、映射等。希望能够用类似于SQL语法的形式对Java内存中的数据进行处理。 Stream的特点: (1)Stream本身不负责存储数据,存储数据是用集合,数组等数据结构。 (2)Stream是不可变,一 阅读全文
posted @ 2020-04-08 10:39 dirsoen 阅读(399) 评论(0) 推荐(1)
摘要:Lambda表达式是给函数式接口(SAM接口)的变量或形参赋值的表达式。Lambda表达式替代了原来使用匿名内部类的对象给函数式接口(SAM接口)的变量或形参赋值的形式。 java提供了大量的函数式接口,在java.util.function包中,一般包含四大类: 1、消费型接口:Consumer< 阅读全文
posted @ 2020-04-08 10:17 dirsoen 阅读(526) 评论(0) 推荐(0)
摘要:在java程序运行时,读取某个类的泛型实参 步骤: 1、获取Class对象 2、获取泛型父类 3、获取泛型实参数 示例: class Father<T,U>{ } class Son extends Father<Integer, String>{ } //读取泛型实参 @Test public v 阅读全文
posted @ 2020-04-06 17:05 dirsoen 阅读(753) 评论(0) 推荐(0)
摘要:工厂设计模式:为了解耦合,把对象的创建者与对象的使用者分开。 生活中:批量生产产品 Java中:批量生产对象 分工: 把生产(创建)对象与使用对象分开了,解耦合 1、简单工厂模式 优点:代码比较简洁 缺点:如果增加新的产品类型,需要修改工厂类 违反了面向对象的一个开发原则:对扩展开放,对修改关闭2、 阅读全文
posted @ 2020-04-06 16:55 dirsoen 阅读(728) 评论(0) 推荐(0)
摘要:/* 代理模式 * * 生活中: * (1)自己不方便做一些事情,例如:去国外 找代购 租房 买房 等等... * 1、代理模式 * (1)主题接口:要求代理类与被代理类实现同一个接口,例如:DAO接口 * (2)被代理者 * (3)代理者 * 必须持有被代理者的引用 * * 2、静态代理模式 * 阅读全文
posted @ 2020-04-06 16:43 dirsoen 阅读(540) 评论(0) 推荐(0)
摘要:对象的序列化和反序列化: 1、对象的序列需要实现java.util.Serializable或者是java.io.Externalizable接口。 2、Serializable只是一个接口,代表着可序列化,并没有定义任何的抽象方法,只能序列化非静态的,以及没有使用transient关键字修饰的属性 阅读全文
posted @ 2020-04-03 11:33 dirsoen 阅读(287) 评论(0) 推荐(0)
摘要:1.文件夹的拷贝 public void copy(File src, File dest) throws IOException { if (dest.isFile()) { throw new RuntimeException(dest + "不是文件夹"); } File file = new 阅读全文
posted @ 2020-04-02 11:33 dirsoen 阅读(506) 评论(0) 推荐(0)
摘要:递归:调用方法的过程中再次调用自己 要明确递归结束的条件 示例: 1.斐波那契数列(假设一对刚出生的小兔一个月后就能长成大兔,再过一个月就能生下一对小兔,并且此后每个月都生一对小兔,没有发生死亡): public static int fibo(int n) { if (n == 1 || n == 阅读全文
posted @ 2020-04-02 11:11 dirsoen 阅读(693) 评论(0) 推荐(0)
摘要:泛型的理解: 1.类似于一个容器,容器是通用的,可以装任意东西,至于用来装什么,这个得使用者确定,泛型就类似于一个标签的作用,能一眼就看出,这个容器放的是什么 2.泛型,个人认为这就相当于一种标识,规范,在java编译时候就会去检查的,如果不符合类型要求,则会编译失败 泛型的好处: 1.实现类型安全 阅读全文
posted @ 2020-04-01 09:45 dirsoen 阅读(222) 评论(0) 推荐(0)
摘要:单例模式的几种实现方式: 一:饿汉式单例 方式一:枚举方式获得单例对象 方式二:静态属性获得单例对象 方式三:静态方法获得单例对象 二:懒汉式单例 方式一:静态方法获得单例对象(线程安全) 方式二:内部类方式去获取单例对象 示例: 恶汉式:方式一 enum Singleton{ INSTANCE;/ 阅读全文
posted @ 2020-03-27 11:43 dirsoen 阅读(340) 评论(0) 推荐(0)
摘要:关于java中数组的复制: 1.对数组进行扩容 Arrays.copyOf()方法,接收需要拷贝的数组和新数组长度,返回新数组 2.删除数组某个元素,后续元素前移 System.arraycopy(Object src, int srcPos, Object dest, int destPos, i 阅读全文
posted @ 2020-03-25 14:52 dirsoen 阅读(453) 评论(0) 推荐(0)
摘要:1.实现奇数和偶数的交叉打印 2.打印时间间隔1秒 public class TestThread02 { public static void main(String[] args) { Thread t1 = new EvenThread(); Thread t2 = new EvenThrea 阅读全文
posted @ 2020-03-25 11:10 dirsoen 阅读(1056) 评论(0) 推荐(0)
摘要:案例:请按要求编写多线程应用程序,模拟多个人通过一个山洞: ​ 1、这个山洞每次只能通过一个人,每个人通过山洞的时间为5秒; ​ 2、随机生成10个人,同时准备过此山洞 ​ 3、定义一个变量用于记录通过隧道的人数 ​ 4、显示每次通过山洞人的姓名,和通过顺序; public class TestTu 阅读全文
posted @ 2020-03-25 11:00 dirsoen 阅读(393) 评论(0) 推荐(0)
摘要:丈夫类:往银行账户里存钱,存款[0~10000)的随机数,2秒存一次 妻子类:从银行账户里取钱,取款[0~10000)的随机数,2秒取一次,如果余额不足,等到丈夫存了钱,再取 public class TestAccount { public static void main(String[] ar 阅读全文
posted @ 2020-03-25 10:06 dirsoen 阅读(821) 评论(0) 推荐(0)
摘要:java自定义注解,元注解的使用 ,元注解中值详解 元注解:用于注解注解的注解... 元注解共有4个: ①、@Target:用于明确注解用于目标类的哪个位置 ElementType枚举类的值: Type:用于注解类 Fields:用于注解属性 Methods:用于注解方法 Parameter:用于注 阅读全文
posted @ 2020-03-20 11:04 dirsoen 阅读(5889) 评论(0) 推荐(0)
摘要:(1)finally块中的代码是无论try中是否发生异常,也无论catch是否可以捕获异常,也不管try和catch中是否有return语句,都会执行的部分(2)如果finally中有return语句,那么try...catch...finally结构 一定从finally中的return回去(3) 阅读全文
posted @ 2020-03-19 14:26 dirsoen 阅读(344) 评论(0) 推荐(0)
摘要:匿名内部类的声明使用方式, Comparabletor接口实现,需要先导入包,再实现Comparator的对象比较的方法,并且需要新声明比较器类去实现此接口,再用比较器类新建对象调用compare(Objecto1, Object o2)方法,比较两个需要比较的对象的大小 Comparable的接口 阅读全文
posted @ 2020-03-19 13:24 dirsoen 阅读(1356) 评论(0) 推荐(0)
摘要:模板设计模式简单来说就是类似于ppt模板,文章模板等等除了自定义的内容,其他可以直接拿来用的一个东西。 简单例子:计算一个方法的执行时间 public class Test{ public static void main(String[] args){ MyCode m = new MyCode( 阅读全文
posted @ 2020-03-16 16:14 dirsoen 阅读(167) 评论(0) 推荐(0)