
JavaSE
文章平均质量分 79
JavaSE
ginger_mr
略...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Class.isAssignableFrom()方法与instanceof通过反射配合注解为字段设置默认值
isAssignableFrom()方法与instanceof关键字的区别总结为以下两个点:isAssignableFrom()方法是从类继承的角度去判断,instanceof关键字是从实例继承的角度去判断。isAssignableFrom()方法是判断是否为某个类的父类,instanceof关键字是判断是否某个类的子类。使用方法:父类.class.isAssignableFrom(子类.class)子类实例 instanceof 父类类型isAssignableFrom()方法的调用者转载 2020-12-23 18:05:49 · 384 阅读 · 0 评论 -
计算机必学课程
计算机必学课程1.计算机组成原理计算机组成原理这门课很好地向我们阐述了计算机是如何工作的,妹子咨询你电脑问题的时候,答案就藏在这门课程里面(大雾)。推荐书籍:《深入理解计算机系统》这本书是从程序员的角度来看待整个计算机系统的,所以是非常适合程序员的。但是这本书不仅仅包含了计算机硬件的相关知识,同时还包含了包括操作系统、计算机网络等相关知识。2.计算机操作系统无论你学习什么编程语言,和都避免不了和操作系统打交道,比如你学习 Java,用到多线程技术,实际上操作系统才是负责管理进程和线程的;比如你学原创 2020-10-06 13:39:52 · 1504 阅读 · 0 评论 -
Java-对多态的理解
对多态的理解多态:同一个对象(事物),在不同时刻体现出来的不同状态(一个类的多种形式)。多态又分为编译时多态和运行时多态。1.编译时多态编译期间决定目标方法。通过overloading重载实现。方法名相同,参数不同。编译时多态:public class AddNumber{ public int addition(int x, int y) { return x + y; } public int addition(int x, int y, in原创 2020-12-04 20:38:30 · 196 阅读 · 0 评论 -
2020Java学习路线
原创 2020-06-07 21:24:49 · 331 阅读 · 0 评论 -
Java
博客Java-常用API(初级)Java-(中级)Java-(高级)原创 2020-04-15 09:52:26 · 292 阅读 · 0 评论 -
day22Java-注释和注解
文章目录注释和注解概述自定义注解元注解在程序使用(解析)注解:获取注解中定义的属性值案例:简单的测试框架注释和注解概述注解:注解就是符合一定格式的语法 @xxxx,说明程序的,给计算机看的。注释:用文字描述程序的。给程序员看的定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字...原创 2020-04-14 09:36:54 · 155 阅读 · 1 评论 -
day22Java-Junit测试
Junit单元测试测试分类: 1. 黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。 2. 白盒测试:需要写代码的。关注程序具体的执行流程。测试分类图解...原创 2020-04-13 12:26:40 · 155 阅读 · 0 评论 -
day22Java-JDK8新特性演示
文章目录JDK8新特性演示函数式接口自定义函数式接口函数式编程常用函数式接口Supplier函数式接口Consumer函数式接口Predicate函数式接口Function函数式接口JDK8新特性演示JDK8新特性 1.Lambda表达式(这个新特新我已经写了) 2.函数式接口 自定义函数式接口 函数式编程 常用函数式接口 3.Stream流 4.方法引用...原创 2020-04-12 20:33:08 · 812 阅读 · 0 评论 -
day22Java-JDK1.5到JDK13新特性介绍
文章目录JDK1.5到JDK13新特性介绍JDK1.5#JDK 1.6JDK 1.7JDK 1.8JDK1.9JDK10JDK11JDK12JDK13JDK1.5到JDK13新特性介绍JDK1.5JDK 1.6JDK 1.7JDK 1.8JDK1.9JDK10JDK11JDK12JDK13JDK1.51:自动装箱与拆箱2:枚举3:静态导入4:可变参数(Varargs)...原创 2020-04-10 15:47:37 · 227 阅读 · 0 评论 -
Java-(高级)
多线程Thread博客名称day20Java-常用对象Thread-Thread概述day20Java-常用对象Thread-多线程实现方式1继承Thread类day20Java-常用对象Thread-多线程实现方式2实现Runnable接口day20Java-常用对象Thread-synchroizedday20Java-常用对象Thread-Lock...原创 2020-04-09 22:37:29 · 262 阅读 · 0 评论 -
day22Java-JDK(5、7)新特性演示
文章目录JDK(5、7、8)新特性JDK5-自动装箱和拆箱JDK5-泛型JDK5-增强for循环JDK5-静态导入JDK5-可变参数JDK5-枚举JDK7-二进制字面量JDK7-数字字面量可以出现下划线JDK7-switch 语句可以用字符串JDK7-泛型简化JDK7-异常的多个catch合并JDK7-try-with-resources 语句JDK(5、7、8)新特性JDK5新特性 1.自...原创 2020-04-09 16:03:27 · 361 阅读 · 0 评论 -
day22Java-Reflect-动态代理
动态代理1.什么是代理(中介) 目标对象/被代理对象 ------ 房主:真正的租房的方法 代理对象 ------- 黑中介:有租房子的方法(调用房主的租房的方法) 执行代理对象方法的对象 ---- 租房的人 流程:我们要租房----->中介(租房的方法)------>房主(租房的方法) 抽象:调用对象----->代理对象------>目标对象 静态代理图解...原创 2020-04-09 15:04:52 · 140 阅读 · 0 评论 -
day22Java-Reflect-反射
文章目录类加载器反射反射-获取class文件对象的方式反射-通过反射获取构造方法对象相关方法反射-通过反射获取无参构造方法对象反射-通过反射获取带三个参数构造方法对象反射-通过反射获取私有构造方法对象反射-通过反射获取成员变量对象相关方法反射-通过反射获取不同修饰符的成员变量对象反射-通过反射获取成员方法对象相关方法反射-通过反射获取不同修饰符的成员方法对象类加载器在写反射时,先介绍类加载器,...原创 2020-04-08 20:41:02 · 198 阅读 · 0 评论 -
day21Java-常用对象网络编程Socket-TCP协议
TCP协议java.net.Socket:此类实现客户端套接字(也可以就叫“套接字”)。java.net.ServerSocket:此类实现服务器套接字。TCP: 建立连接通道 数据无限制 速度慢 可靠连接被拒绝。TCP协议一定要先看服务器。java.net.ConnectException: Connection refused: connectTCP协议编程演示...原创 2020-04-07 14:26:05 · 339 阅读 · 0 评论 -
day21Java-网络编程Socket-UDP协议
文章目录UDP协议UDP协议链式编程UDP协议键盘录入UDP协议键盘录入多线程实现UDP协议java.net.DatagramSocket:此类表示用来发送和接收数据报包的套接字。 (里面有数据包那就是UDP协议)UDP: 把数据打包 数据有限制 不建立连接 速度快 不可靠UDP编程演示UDP协议发送数据:A:创建发送端Socket对象B:创建数据,并把数据打包...原创 2020-04-06 17:33:55 · 298 阅读 · 0 评论 -
day21Java-网络编程Socket-InetAddress
InetAddressjava.net.InetAddress此类表示互联网协议 (IP) 地址。如果一个类没有构造方法:A:成员全部是静态的(Math,Arrays,Collections)B:单例设计模式(Runtime)C:类中有静态方法返回该类的对象(InetAddress) class Demo { private Demo(){} public stati...原创 2020-04-06 12:29:32 · 167 阅读 · 0 评论 -
day21Java-网络编程Socket-三要素
网络编程三要素网络编程三要素: A:IP地址 B:端口 C:协议 举例: 我想和格雷福斯说我要打野 A:我要找到格雷福斯。 B:对他说话 C:我说什么呢?"我要打野" 但是,他没学过中文,听不懂。 我没必要说中文,说英语就可以了:I'm going to fight IP地址: 网络中计算机的唯一标识。 计算机只能识别二进制的数据,所以我们的IP地...原创 2020-04-06 11:35:24 · 340 阅读 · 0 评论 -
day20Java-Thread-Lambda表达式
111原创 2020-04-05 11:20:23 · 1362 阅读 · 0 评论 -
day20Java-Thread-线程池和方式3实现多线程
线程池java.util.concurrent.Executors为什么要线程池? 程序启动一个新线程成本是比较高的,因为它涉及到要与操作系统进行交互。而使用线程池可以很好的提高性能,尤其是当程序中要创建大量生存期很短的线程时,更应该考虑使用线程池。线程池的好处: 线程池里的每一个线程代码结束后,并不会死亡,而是再次回到线程池中成为空闲状态,等待下一个对象来使用。如何实现线程池的...原创 2020-04-04 19:32:12 · 172 阅读 · 0 评论 -
day20Java-Thread-线程组
线程组线程组: 把多个线程组合到一起。Java中使用ThreadGroup来表示线程组,它可以对一批线程进行分类管理,Java允许程序直接对线程组进行控制。默认情况下,所有的线程都属于主线程组。public final ThreadGroup getThreadGroup()我们也可以给线程设置分组Thread(ThreadGroup group, Runnable ...原创 2020-04-04 17:24:03 · 151 阅读 · 0 评论 -
day20Java-Thread-多线程中生产者和消费者
多线程生产者和消费者前面已经写过电影票程序,不是特别的符合实际情况。多线程生产者和消费者:就是不同种类的线程对同一个资源的操作。自己对Java等待唤醒机制总结:之前买电影票的线程只有一个卖票线程,创建多个线程对象去执行它。出现了线程安全问题可以使用同步来解决。但是现在是不同种类的线程对同一个资源的操作。也可以使用同步来解决线程安全问题,线程安全问题解决了,但是打印的结果不是很符合实际情...原创 2020-04-04 16:20:14 · 301 阅读 · 0 评论 -
day20Java-Thread-Lock锁以及死锁
Lock锁java.util.concurrent.locks虽然我们可以理解同步代码块和同步方法的锁对象问题,但是我们并没有直接看到在哪里加上了锁,在哪里释放了锁,为了更清晰的表达如何加锁和释放锁,JDK5以后提供了一个新的锁对象Lock。Lock: void lock(): 获取锁。 void unlock():释放锁。 ReentrantLock是Lock的实现类。代码...原创 2020-04-04 09:59:21 · 358 阅读 · 0 评论 -
day20Java-Thread-synchroized
文章目录卖票版本1-继承Thread类实现卖票版本2-实现Runnable接口实现买票版本3-问题分析买票版本4-解决问题卖票版本5-同步机制特点以及代码分析同步机制锁对象卖票版本1-继承Thread类实现通过一个程序,来写为什么需要synchroized。某电影院目前,共有100张票,而它有3个售票窗口售票,请设计一个程序模拟该电影院售票。继承Thread类来实现。代码演示public...原创 2020-04-03 12:37:24 · 165 阅读 · 0 评论 -
day20Java-Thread-多线程实现方式2实现Runnable接口
文章目录多线程实现方式2实现Runnable接口卖票版本1-继承Thread类实现卖票版本2-实现Runnable接口实现买票版本3-实现Runnable接口实现多线程实现方式2实现Runnable接口方式2:实现Runnable接口步骤: A:自定义类MyRunnable实现Runnable接口 B:重写run()方法 C:创建MyRunnable类的对象 ...原创 2020-04-03 12:37:12 · 294 阅读 · 0 评论 -
day20Java-Thread-多线程实现方式1继承Thread类
多线程实现继承Thread类需求:实现多线程的程序。如何实现多线程? 由于线程是依赖进程而存在的,所以我们应该先创建一个进程出来。而进程是由系统创建的。所以我们应该去调用系统的功能创建一个进程。Java是不能直接调用系统功能的,所以,没有办法直接实现多线程程序。但是呢?Java可以去调用C/C++写好的程序来实现多线程程序。由C/C++去调用系统功能创建进程,然后由Java去调用这样的东西,...原创 2020-04-02 19:30:52 · 637 阅读 · 0 评论 -
day20Java-Thread-概述
常用API-Thread进程和线程概述:1:要想了解多线程,必须先了解线程,而要想了解线程,必须先了解进程,因为线程是依赖于进程而存在。2:什么是进程? 通过任务管理器就看到了进程的存在。 而通过观察,发现只有运行的程序才会出现进程。 进程:就是正在运行的程序。 进程是系统进行资源分配和调用的独立单位。每一个进程都有它自己的内存空间和系统资源。 3:多进程有什么意义呢? 单进...原创 2020-04-02 10:05:36 · 203 阅读 · 0 评论 -
day19Java-其它IO-Properties-属性集合类(可以结合IO)
Properties-属性集合类(可以结合IO)java.util.Dictionary<K,V> 继承者 java.util.Hashtable<Object,Object> 继承者 java.util.PropertiesProperties:属性集合类。是一个可以和IO流相结合使用的集合类。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应...原创 2020-04-01 15:30:48 · 204 阅读 · 0 评论 -
day19Java-其它IO-ObjectIn(Out)putStream-(反)序列化流
ObjectIn(Out)putStream-(反)序列化流序列化流:把对象按照流一样的方式存入文本文件或者在网络中传输。对象 -- 流数据(ObjectOutputStream)反序列化流:把文本文件中的流对象数据或者网络中的流对象数据还原成对象。流数据 -- 对象(ObjectInputStream)代码演示public class ObjectStreamDemo { publi...原创 2020-03-31 23:06:49 · 195 阅读 · 0 评论 -
day19Java-其它IO-PrintWriter-打印流
PrintWriter-打印流打印流 字节流打印流 PrintStream 字符打印流 PrintWriter打印流的特点: A:只有写数据的,没有读取数据。只能操作目的地,不能操作数据源。 B:可以操作任意类型的数据。 C:如果启动了自动刷新,能够自动刷新。 D:该流是可以直接操作文本文件的。 哪些流对象是可以直接操作文本文件的呢? ...原创 2020-03-31 22:14:41 · 163 阅读 · 0 评论 -
day19Java-其它IO
文章目录DataIn(out)putStream-数据操作流ByteArrayIn(out)putStream、CharArrayReader(Writer)、StringReader(Writer)-内存操作流System.in(out)-标准输入(出)流RandomAccessFile-随机访问流SequenceInputStream-合并流DataIn(out)putStream-数据操作...原创 2020-03-31 22:02:25 · 166 阅读 · 0 评论 -
day19Java-IO-IO实现登录注册功能
IO实现登录注册功能写代码不是一蹴而就的,中间也出现几个问题,通过Debug找到问题并,并解决。第一件事情就是 有哪些类? 类中的功能又是什么? 类和类的之间的关系又是什么?有哪些类? 用户类 测试类类中的功能又是什么? 用户类 用户名 密码 getXxx setXxx 注册功能 登录功能 但是如果将上述的这些全部写在一个用户类里面那样,用户类...原创 2020-03-31 12:07:05 · 219 阅读 · 0 评论 -
day19Java-IO-IO结合集合练习
1111原创 2020-03-30 19:22:34 · 328 阅读 · 0 评论 -
day19Java-IO-LineNumberReader-获取行号字符缓冲输入流
LineNumberReader-字符缓冲流获取行号BufferedReader|–LineNumberReaderpublic int getLineNumber()获得当前行号。public void setLineNumber(int lineNumber)代码演示public class LineNumberReaderDemo { public static void...原创 2020-03-30 17:21:29 · 192 阅读 · 0 评论 -
day19Java-IO-小结
Java-常用对象IO-小结IO流 |--字节流 |--字节输入流 InputStream int read():一次读取一个字节,返回实际读取字节值。 int read(byte[] bys):一次读取一个字节数组,返回实际读取的长度。 |--FileInputStream(字节输入流) |--BufferedInputStr...原创 2020-03-28 17:25:05 · 156 阅读 · 0 评论 -
day19Java-IO-BufferedReader(Writer)-字符缓冲流
BufferedReader(Writer)-字符缓冲流java.io.Writer 继承者 java.io.BufferedWriterjava.io.Reader 继承者 java.io.BufferedReader字符流为了高效读写,也提供了对应的字符缓冲流。BufferedWriter:字符缓冲输出流BufferedReader:字符缓冲输入流BufferedWriter:字符...原创 2020-03-28 14:23:29 · 269 阅读 · 0 评论 -
day19Java-IO-FileReader(Writer)-字符流
常用对象IO-FileReader(Writer)-字符流由于我们常见的操作都是使用本地默认编码,所以,不用指定编码。而转换流的名称有点长,所以,Java就提供了其子类供我们使用。OutputStreamWriter = FileOutputStream + 编码表(GBK)FileWriter = FileOutputStream + 编码表(GBK)InputStreamReader...原创 2020-03-28 10:53:16 · 184 阅读 · 0 评论 -
day19Java-IO-In(Out)putStreamReader(Writer)-转换流
In(Out)putStreamReader(Writer)-转换流java.io.Writer 继承 java.io.OutputStreamWriterjava.io.Reader 继承 java.io.InputStreamReader转换流就是把,字节流转换为字符流的桥梁。把字节流转换为字符流。字符流 = 字节流 +编码表。有了字节流为什么还要字符流? 字节流读取中文其实是...原创 2020-03-27 22:56:29 · 242 阅读 · 0 评论 -
day19Java-IO-BufferedIn(Out)putStream-字节缓冲流
常用对象IO-BufferedIn(Out)putStreamjava.io.InputStream 继承 java.io.FilterInputStream 继承 java.io.BufferedInputStreamjava.io.OutputStream 继承 java.io.FilterOutputStream 继承 java.io.BufferedOutputStream通过定义数...原创 2020-03-26 21:13:32 · 237 阅读 · 0 评论 -
day19Java-IO-FileIn(Out)putStream-字节流
常用对象IO-FileIn(Out)putStreamjava.io.FileInputStream extends java.io.InputStreamjava.io.FileOutputStream extends java.io.OutputStream注意:InputStream和OutputStream抽象类不能实例化,每种基类的子类都是以父类名作为后缀名。XxxOutputS...原创 2020-03-26 17:43:10 · 344 阅读 · 0 评论 -
day19Java-IO-递归
常用对象IO-递归递归:方法定义中调用方法本身的现象Math.max(Math.max(a,b),c);方法的嵌套调用,这不是递归。递归代码:public void show(int n) { if(n <= 0) { System.exit(0); } System.out.println(n); show(--n);}递归注意事项:...原创 2020-03-25 14:20:51 · 190 阅读 · 0 评论