首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java基础
谢先生F
创建于2021-05-16
订阅专栏
从Java最基础的字符串开始研究,并且深入研究集合,IO,网络,多线程,反射等技术
暂无订阅
共15篇文章
创建于2021-05-16
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
数据结构:深入二进制的世界
牛逼的算法不一定牛逼,有可能是数据结构选的好。同样0和1的魅力无法挡!!!能够深入研究到0和1,才算是真正打开了算法的大门。
Java基础系列:反射
这里的@Override就是注解,是jdk提供的。注解我们是可以自定义的,我们通过@Override来看看自定义注解包含那些元素 指示带注释类型的注释将保留多长时间。 如果注释类型声明上没有保留注释,则保留策略默认为RetentionPolicy.CLASS,包含以下部分:
Java基础系列:NIO基础编程
。。。 该属性表示当前Buffer的容量,当前容量在初始化之后是固定的,不能被修改。 allocateDirect()和allocate()的表现方式一样,但是底层实现不同。allocateDirect()是从直接内存中开辟一块空间做缓冲区。 和Buffer配合使用的通道,可以…
Java基础系列:Socket编程
代码已经通过测试,注释写的也非常清楚,大家可以尝试下,按照标识#消息的格式就可以点对点聊天了。 DatagramSocket是用于发送和接收数据报包的套接字,是基于UDP协议下的实现。根据类中官方介绍: 我们也能明白UDP协议的特性。 到这里,关于Socket编程方面的东西就聊…
Java基础系列:网络协议|牛气冲天新年征文
有网络存在,必然存在互联网,互联网上存在N多的设备,我们如何能够缩小这个范围就成了网络层所要做的事情。 每个设备中只存储自身网络中的节点,这样通过各种方式的比对,每次都得到离自己最近的一个节点。也就是这样的: 那么,如何对比就成了问题的关键。所以每个设备中,都存在这么一张表叫路…
Java基础系列:计算机网络基础概念
大部分情况下,做开发的程序猿是是不需要和网络打交道的,就比如本人:工作这么多年,去年年初做过一次系统架构,做负载均衡的时候顺带了解了一下这方面的基础知识,其他时候根本用不到。 在1858年的跨大西洋同轴电缆,每分钟传输120个字,而我们现在采用的双绞线电缆,通过导线两两缠绕,抵…
Java基础系列:线程同步和线程池
通俗的来讲,当多个线程操作同一份共享数据的时候,数据的一致性被破坏,这就是线程不安全的。 同步锁,监视共享资源或共享对象(同步监视器),需要的是Object的子类。可以通过同步代码块或者同步方法的方法来加锁 当线程A访问,锁定同步监视器,开始执行业务逻辑。当线程B访问,发现同步…
Java基础系列:多线程基础
进程是一个静态的概念,在进程执行过程中,会占用特定的地址空间,比如:CPU,内存,磁盘等等。可以说进程是申请系统资源最小的单位且都是独立的存在 在单位时间内,进程在一个处理器中是单一执行的,CPU处理器每次只能够处理一个进程。只不过CPU的切换速度特别快 当操作系统决定要把控制…
Java基础系列:缓冲流
前面,我们说过输入流处理需要数据源,流数据源可以来自文件,网络等等任意的存在。 而通过BufferedOutputStream,应用程序可以将字节写入底层输出流,而不必为写入的每个字节引起对底层系统的调用。 ByteArrayInputStream是一个包含内部缓冲区的流,该缓…
Java基础系列:IO流
根据之前的结构图,我们还缺少Set没有介绍。 说实在的,这里我不打算和详细的来介绍Set集合,介绍Set也只是调用其api方法。我们先快速过一下。 继承基础类(父类):在子类中重写其父类的方法。 组合基础类:也就是说,在子类中,通过调用基础类的方法,来达到复用基础类的方式。在S…
Java基础系列:了解TreeMap
树是一种数据结构,它是由n(n>=1)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点: 也成AVL树,是基于二叉搜索树的一种扩展,也就是说拥有二叉搜索树的全部特性。二叉搜索树存在缺点: 我们已经…
Java基础系列:了解HashMap
这时如果我们想从其中查找到某一条数据就非常麻烦,涉及到性能等的问题,而通过K,V形式存储,我们就相当于对某一个值添加了索引,通过这个索引我们就能很快定位到数据,提高系统的性能。 ... 好,了解到这一点之后,我们继续往后看。 也叫散列表,是根据关键码值(Key value)而直…
Java基础系列:了解LinkedList
链表是一种在逻辑上连续,但是物理存储上非连续的存储结构,其保证逻辑连续是通过指针指向来确定顺序的。 LinkedList底层是采用双向链表的结构来进行数据存储的,可以说,LinkedList所有的操作都是针对引用指向来进行操作的。下面来看具体的方法 和ArrayList不同,这…
Java基础系列:了解ArrayList
首先,我们要明白:数组是相同类型数据的有序集合。 元素在数组中存储的位置称之为下标。 需要注意的一点是:在任何的编程语言中,如果需要通过下标来得到指定元素,那么这个下标的值一定是从0开始的,且可取值的最大范围为:指定长度 - 1。 上面介绍了数组的简单使用,下面我们再来重点看一…
Java基础系列:重新认识字符串
所以说我们通过chatAt()方法的下标能够得到指定的字符,原因就在于字符串是通过char数组来储存的。 1. hashCode() 2. equals() 方法实现上还是比较简单的。对比的char数组每个值是否相等。 如果以后有这样的需求:判断两者是否相等?那么我们就可以参考…