09 2022 档案

摘要:定义一个接口,让子类去实现这个接口 再定义一个工厂类,该类中定义一个方法 返回值就是接口类型,可以根据传入的参数决定返回哪个子类对象 public interface Car { } public class Benz implements Car{ } public class BMW imple 阅读全文
posted @ 2022-09-29 14:08 pzistart 阅读(18) 评论(0) 推荐(0) 编辑
摘要:装饰模式可以在不改变原来类中代码的基础上,增强类中的方法 装饰类LDHWrapper和被装饰类LDH必须实现同个接口Star 装饰类中要定义属性为:被装饰类对象,同时定义构造方法 重写接口Star中的方法,如果需要增强方法,就重写逻辑 public interface Star { void sin 阅读全文
posted @ 2022-09-29 13:52 pzistart 阅读(25) 评论(0) 推荐(0) 编辑
摘要:反射 反射的核心就是拿到了.java编译后的.class文件。通过一系列的API,可以拿到该类中的成员:构造器、属性、方法等。 注解 注解,可以告诉编译器或者JVM做一些事情。比如说重写的@Override注解,可以让编译器检查重写是否正确。 注解的解析,这个就也用到了反射的知识。注解加在了哪个成员 阅读全文
posted @ 2022-09-28 16:07 pzistart 阅读(30) 评论(0) 推荐(0) 编辑
摘要:静态、实例代码块 静态代码块,在类加载之前会加载一次,可以用来初始化静态资源 实例代码块,每次调用构造器初始化对象的时候,都要执行一次。其实质是放到构造器方法中执行。可以用来初始化对象。 public class block { static { System.out.println("静态代码块" 阅读全文
posted @ 2022-09-27 15:24 pzistart 阅读(37) 评论(0) 推荐(0) 编辑
摘要:抽象类 抽象类和普通类没什么大的差异,抽象类不能被实例化,必须用abstarct修饰,权限修饰符只能是public/protected类型;如果不写权限修饰符,则它默认就是public类型的。 抽象类必须被继承才能实例化,所以它不能被final修饰。因为被final修饰的类不能被继承,被final修 阅读全文
posted @ 2022-09-27 15:12 pzistart 阅读(129) 评论(0) 推荐(0) 编辑
摘要:泛型可以用于接口、类、方法上。还有泛型通配符这个概念 泛型的好处:可以在编译时检查 1.用于方法中,指定该方法中的形参的类型。 语法:修饰符 <代表泛型的变量> 返回值类型 方法名(参数){ } 注意:方法上定义了是什么 泛型变量 ,后面就只能用什么 泛型变量。 package com.itheim 阅读全文
posted @ 2022-09-27 10:23 pzistart 阅读(166) 评论(0) 推荐(0) 编辑
摘要:package com.itheima.test; /** * @author Pzi * @create 2022-09-26 16:23 */ public class A { private String name; private String pwd; public A() { } pub 阅读全文
posted @ 2022-09-26 16:35 pzistart 阅读(28) 评论(0) 推荐(0) 编辑
摘要:Java异常的体系结构 根类Throwable,其子类Error和Excepion Excepion分为运行时异常RuntimeException(也叫非检查型异常),和编译时Exception异常(也叫检查型异常)。编译时异常必须处理,而运行时异常可以不处理。 运行时异常可以不处理,但是程序运行时 阅读全文
posted @ 2022-09-26 13:47 pzistart 阅读(212) 评论(0) 推荐(0) 编辑
摘要:最近看多线程比较多,对于volatile,syn,CAS,JMM模型(主内存,工作内存)这些概念有些理解。volatile,syn工作机制等。 以及对于多线程中可见性,原子性的理解。 随着对这些基础的掌握和理解,我觉得自己对于多线程方面的能力有一定的提升。 可见性的问题上,volatile是怎么解决 阅读全文
posted @ 2022-09-23 16:32 pzistart 阅读(78) 评论(0) 推荐(0) 编辑
摘要:多线程原子性的理解:一个操作要么全部执行完毕,不会受到干扰而被中断;要么全都不执行 对于多线程中操作共享变量的操作,要保证它的原子性。 以下是对一个非原子性操作的分析: 在一个类中有共享变量count,开启一百个线程对其进行count++操作,每个线程对count加一百次。 count变量是属于共享 阅读全文
posted @ 2022-09-23 10:11 pzistart 阅读(123) 评论(0) 推荐(0) 编辑
摘要:老是把Java中权限修饰符给忘记,写一个博客加深印象吧 权限分为四个作用域:当前类,同一个包,其他包的子类,其他包的类。 首先要知道包的概念,Java中一个包是指一个package下的所有文件。 protected适用于修饰成员变量,也就是类中的方法和属性,不能用于修饰类。子类B继承了父类A,如果父 阅读全文
posted @ 2022-09-23 00:00 pzistart 阅读(80) 评论(0) 推荐(0) 编辑
摘要:今天上午在公司没啥任务,就学起了es,看的黑马的资料,先看文档,不懂的地方就去看了下视频。 大概知道了es概念,es是es技术栈中最核心的,这个技术栈还有其他的比如分词器插件,还有es可视化工具等等。 es的概念就是它的文档、索引啊这些。 以及es和MySQL的对比,es中的文档相当于MySQL中的 阅读全文
posted @ 2022-09-22 22:41 pzistart 阅读(58) 评论(0) 推荐(0) 编辑
摘要:今天学了springcloud中的一些知识点。 1.Feign的使用,学会了Feign的两种实现方式。 一种是将client和controller层实现一个共同的接口 -- 这种方式的话耦合度非常高,而且形参中的注解不会被继承,所以controller中仍然需要注明形参列表 另一种是将client单 阅读全文
posted @ 2022-09-18 23:42 pzistart 阅读(51) 评论(0) 推荐(0) 编辑
摘要:每天刷1道以上算法题! 阅读全文
posted @ 2022-09-13 20:51 pzistart 阅读(9) 评论(0) 推荐(0) 编辑
摘要:这是一个nio网络通信服务端的demo,主要就学习了selector的一些用法,以及它里面的事件类型 selector是对nio的一个优化,它能保证既能高效处理线程中的事件,又能保证线程不会一直占用cpu 其中我认为最重要的是selector的执行流程,机制 将 channel和 selector建 阅读全文
posted @ 2022-09-12 21:37 pzistart 阅读(32) 评论(0) 推荐(0) 编辑
摘要:对于jdk8后的接口,接口中加入了可以定义默认方法和静态方法。 ####为什么要这样设计呢? 是为了在给接口扩展方法的时候,不会影响已经实现了该接口的类 加入默认方法可以解决:在添加方法的同时,不影响现有的实现类 ####下面演示了一下默认方法和静态方法的使用: interface A { /** 阅读全文
posted @ 2022-09-11 22:32 pzistart 阅读(79) 评论(0) 推荐(0) 编辑

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