![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaSE基础
文章平均质量分 82
咸鱼乐
这个作者很懒,什么都没留下…
展开
-
Java——反射详解
特别是在设计或运行中添加新类时,能够快速地应用开发工具动态地查询新添加类的能力。注意:如果类名保存在字符串中,并可在运行中改变,就可以使用这个方法。在程序运行期间,Java运行时系统始终为所有的对象维护一个被称为运行时的类型标识。然而,可以通过专门的Java类访问这些信息。如果T是任意的Java类型(或void关键字), T.class将代表匹配的类对象。Object类中的getClass( )方法将会返回一个Class类型的实例。● 在运行时查看对象,例如,编写一个toString方法供所有类使用。原创 2022-12-08 18:26:27 · 528 阅读 · 0 评论 -
Java高级---网络编程
对于 TCP 套接字,任何以前写入的数据都将被发 送,并且后跟 TCP 的正常连接终止序列。IPV6: 16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每6位整数可以转换为一个0~65535的十进制数 格式: X.X.X.X.X.X.X.X 例如: FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF。调用 该Socket类对象的 getOutputStream() 和 getInputStream ():获取输出 流和输入流,开始网络数据的发送和接收。...原创 2022-08-17 11:04:17 · 492 阅读 · 0 评论 -
Synchronized和Lock的区别
10.synchronized发生异常时,会自动的释放线程占有的锁,而lock锁没有显示的释放锁,则可能会造成死锁,因此lock的锁释放需要在finally中。6.synchronized在进行加锁解锁时,只有一个同步队列和一个等待队列, lock有一个同步队列,可以有多个等待队列;2.synchronized是隐式的加锁(超出作用范围自动释放),lock是手动显式的加锁,手动的释放锁;5.synchronized是阻塞式加锁,lock是非阻塞式加锁支持可中断式加锁,支持超时时间的加锁;...原创 2022-08-16 17:53:11 · 346 阅读 · 0 评论 -
java高级---IO流
当需要把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作。当把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操作。因此我们把这种输入和输出动作称为IO操作。数据在内存中的流动;广义上来讲:不同电脑之间数据的流动,也是IO流狭义上的IO操作:进程之间的数据流动。...原创 2022-08-14 14:16:41 · 566 阅读 · 0 评论 -
Java多线程
多进程编程多线程编程协程编程(轻量级的线程)程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一 段静态的代码,静态对象。进程(process)是程序的一次执行过程,或是。是一个动态 的过程:有它自身的产生、存在和消亡的过程。——生命周期 (操作系统的基本单位)如:运行中的QQ,运行中的MP3播放器程序是静态的,进程是动态的进程作为资源分配的单位,系统在运行时会为每个进程分配不同的内存区域线程(thread),,是一个程序内部的一条执行路径。...原创 2022-08-14 13:19:50 · 145 阅读 · 0 评论 -
Java集合中常见的面试题
选择系数的时候要选择尽量大的系数。因为如果计算出来的hash地址越大,所谓的 “冲突”就越少,查找起来效率也会提高。(减少冲突) 并且31只占用5bits,相乘造成数据溢出的概率较小。 31可以 由i*31== (i...原创 2022-08-08 11:01:20 · 297 阅读 · 0 评论 -
深入 java8 ---HashMap 的实现原理
哈希表是基于 Map 接口的实现的,它允许 null 值和 null 键,它不是线程同步的,同时也不保证有序。Map 的这种实现方式为 get (取)和 put(存)带来了比较好的性能。但是如果涉及到大量的遍历操作的话,就 尽量不要把 capacity 设置得太高(或 load factor 设置得太低),否则会严重降低遍 历的效率。影响 HashMap 性能的两个重要参数:“initial capacity”(初始化容量)和”load factor“(负载因子)。......原创 2022-08-08 10:37:06 · 184 阅读 · 0 评论 -
Arrays类中常用的方法
答:数组是Object的子类,a.equals(b) 使用的是 Object 类的 equals 方法,是比较地址值的。而 Arrays 的equals()方法与Object的不同,它进行数组内容的比较。在数组中查找指定值,若找到,则返回此值的下标,若没找到,返回 -插入点-1;如果拷贝长度超出原来数组的长度,则多出的部分使用0填充!对传入的数组进行对应的下标起始位置,以及排序个数进行排序。以字符串的形式快速输出数组的内容。比较的是两个数组的内容是否相同。,返回值是将原数组拷贝一份返回。...原创 2022-08-03 19:31:50 · 596 阅读 · 0 评论 -
Java中异常的处理
在Java中你可以自定义异常。编写自己的异常类时需要记住下面的几点。所有异常都必须是Throwable的子类。如果希望写一个检查性异常类,则需要继承Exception类。如果你想写一个运行时异常类,那么需要继承RuntimeException类。}只继承Exception类来创建的异常类是检查性异常类。一个异常类和其它任何类一样,包含有变量和方法。https。...原创 2022-07-29 15:38:51 · 455 阅读 · 0 评论 -
Java中内部类、以及static和final关键字的使用
要访问内部类,可以通过创建外部类的对象,然后创建内部类的对象来实现。私有的内部类非静态内部类非静态内部类是一个类中嵌套着另外一个类。它有访问外部类成员的权限,通常被称为内部类。由于内部类嵌套在外部类中,因此必须首先实例化外部类,然后创建内部类的对象来实现。私有的内部类内部类可以使用private或protected来修饰,如果你不希望内部类被外部类访问静态内部类。...原创 2022-07-25 16:45:19 · 188 阅读 · 0 评论 -
Java中接口和抽象类的理解
在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。如果你想设计这样一个类,该类包含一个特别的成员方法,该方法的具体实现由它的子类确定,那么你可以在父类中声明该方法为抽象方法。以上的程序片段是合法定义的子接口,与类不同的是,接口允许多继承,而C及D可以定义或是继承相同的方法。抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不行。否则,类必须声明为抽象的类。...原创 2022-07-25 15:55:46 · 1325 阅读 · 0 评论 -
Java面向对象的三大特征
在面向对象程式设计方法中,封装(英语Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。继承是Java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。...原创 2022-07-24 23:05:46 · 303 阅读 · 0 评论 -
面向对象的编程入门
为类的实例化,具体的案例(代码中先有类再根据类创建对象)可以通过类的构造方法来创建对象(使用new关键字创建对象)类型对象名称=new构造函数();一切客观存在的食物都是对象,即“万物皆对象”任何对象一定具有自己的特征和行为(即属性和方法)特征称为属性,代表对象有什么行为称为方法,代表对象能做什么操作【属性方法】对象.属性【方法】;是面向对象程序设计实现信息封装的基础类名大驼峰命名规则Java中如果定义类的时候,没有给属性赋值,则会有默认的值;基本数据类型的默认值。......原创 2022-07-22 11:07:35 · 137 阅读 · 0 评论 -
java中数组的使用
数组的基本概念以及数组的使用,数组中常用的排序方法原创 2022-07-19 12:19:02 · 328 阅读 · 0 评论 -
Java中数组(冒泡,选择,插入)排序算法以及二分查找
Java中数组(冒泡,选择,插入)排序算法。原创 2022-07-17 15:08:16 · 390 阅读 · 0 评论 -
javaSE第一阶段总结
JavaSE第一阶段知识汇总原创 2022-07-15 11:48:32 · 833 阅读 · 0 评论 -
JDK1.8的安装与配置
JDK1.8的安装与配置原创 2022-07-11 11:46:18 · 1129 阅读 · 0 评论