首页
学习
活动
专区
工具
TVP
发布

Kevin-ZhangCG

专栏作者
103
文章
139689
阅读量
45
订阅数
Java代码规范
如何更规范化编写Java 代码的重要性想必毋需多言,其中最重要的几点当属提高代码性能、使代码远离Bug、令代码更优雅。
Kevin_Zhang
2022-05-09
1K0
Java项目中常用的的五大设计原则
单一责任原则,从名字上我们就能比较好的去理解它。这项原则主张一个对象只专注于单个方面的逻辑,强调了职责的专一性。
Kevin_Zhang
2021-10-26
3900
Java泛型背后是什么?
文Java中泛型的应用,让大家更好地理解泛型,以及常说的泛型类型擦除是什么概念,举一个简单的例子,如下:
Kevin_Zhang
2021-10-25
2230
常见的for循环优化方式
我们都经常使用一些循环耗时计算的操作,特别是for循环,它是一种重复计算的操作,如果处理不好,耗时就比较大,如果处理书写得当将大大提高效率,下面总结几条for循环的常见优化方式。
Kevin_Zhang
2021-10-21
9690
Java常用工具类集合
或使用 com.ailk.org.apache.commons.lang3.StringUtils 工具类
Kevin_Zhang
2021-06-29
6210
Java8中使用Optional处理null对象
  Optional 是一个容器对象,可以存储对象、字符串等值,当然也可以存储 null 值。Optional 提供很多有用的方法,能帮助我们将 Java 中的对象等一些值存入其中,这样我们就不用显式进行空值检测,使我们能够用少量的代码完成复杂的流程。
Kevin_Zhang
2021-06-22
2K0
Java8 中使用Stream 让List 转 Map使用总结
在使用 Java 的新特性 Collectors.toMap() 将 List 转换为 Map 时存在一些不容易发现的问题,这里总结一下备查。
Kevin_Zhang
2021-06-21
4.8K0
浅析IOC 和 DI
  学习过spring框架的人一定都会听过Spring的IoC(控制反转) 、DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC 、DI这两个概念是模糊不清的,是很难理解的,今天和大家分享网上的一些技术大牛们对Spring框架的IOC的理解以及谈谈我对Spring Ioc的理解。
Kevin_Zhang
2021-06-10
7300
数据结构之链表解析
  我们知道,数组作为数据存储结构有一定的缺陷。在无序数组中,搜索时低效的;而在有序数组中,插入效率又很低;不管在哪一种数组中删除效率都很低。况且一个数组创建后,它的大小是无法改变的。而链表可能是继数组之后第二种使用得最广泛的通用数据结构了。这里主要来讨论并写一个单链表和双向链表。
Kevin_Zhang
2019-03-14
3930
Java中堆(heap)和栈(stack)的区别
  在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。
Kevin_Zhang
2019-03-13
1.7K0
数据结构之栈和队列
 栈或者队列是经典的数据结构,虽然平时都在用,但是都是别人封装好的集合,我们不用手写了,但是这些内功,作为开发人员来说是必须要掌握的。
Kevin_Zhang
2019-03-05
2790
详解synchronized与Lock的区别与使用
在开始之前先把进程与线程进行区分一下,一个程序最少需要一个进程,而一个进程最少需要一个线程。关系是线程–>进程–>程序的大致组成结构。所以线程是程序执行流的最小单位,而进程是系统进行资源分配和调度的一个独立单位。以下我们所有讨论的都是建立在线程基础之上。
Kevin_Zhang
2019-02-27
3.4K0
Java多线程与并发面试题
线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。
Kevin_Zhang
2019-02-26
6670
[ Java学习基础 ] Java对象的创建和销毁
类实例化可生成对象,实例方法就是对象方法,实例变量就是对象属性。一个对象的生命周期包括三个阶段:创建、使用和销毁。
Kevin_Zhang
2019-02-20
1.7K0
[ Java学习基础 ] Java的封装性与访问控制
      Java面向对象的封装性是通过对成员变量和方法进行访问控制实现的,访问控制分为4个等级:私有、默认、保护和公有,具体规则如下表:
Kevin_Zhang
2019-02-20
4090
[ Java学习基础 ] 浅析Java方法调用
分析:首先应该明白的是此处是针对类对方法的调用,而不是对象对方法的调用; 其次,testMethod方法是 statici静态方法,直接使用"类方法"即可,因为静态方法使用不依赖对象是否被创建。null可以被强制类型转换成任意类型(不是任意类型对象),于是可以通过它来执行静态方法; 最后,非静态方法用"对象 . 方法"的方式调用,必须依赖对象被创建后才能使用,若将testmethod()方法前的 static去掉,则会报空指针异常。此处也验证了上面的观点。当然,不管是否是静态方法,都是已经存在的,只是访问方式不同 
Kevin_Zhang
2019-02-20
1.1K0
[ Java学习基础 ] String字符串的基本操作
String字符串虽然是不可变的字符串,但也同样可以进行拼接,只是会产生一个新的对象。String字符串拼接的时候可以使用“+”运算符或String的concat(String str)方法。其中“+”运算符的优势是可以连接任何类型的数据拼接成为字符串,而concat方法只能拼接String类型的字符串。
Kevin_Zhang
2019-02-20
6700
[ Java学习基础 ] String、StringBuffer、StringBuilder比较学习
首先讲获得字符串对象的方式有两种,一种是直接使用字符串常量,一种是使用new关键字创建,但它们之间是有一些区别,如下运行实例:
Kevin_Zhang
2019-02-20
3470
Mybatis学习笔记之一(环境搭建和入门案例介绍)
  MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。
Kevin_Zhang
2019-02-20
7400
Java中clone方法的使用
  在实际编程过程中,我们常常要遇到这种情况:有一个对象object1,在某一时刻object1中已经包含了一些有效值,此时可能会需要一个和object1完全相同新对象object2,并且此后对object2任何改动都不会影响到object1中的值,也就是说,object1与object2是两个独立的对象,但object2的初始值是由object1对象确定的。在Java语言中,用简单的赋值语句是不能满足这种需 求的。要满足这种需求虽然有很多途径,但实现clone()方法是其中最简单,也是最高效的手段。
Kevin_Zhang
2019-02-20
7180
点击加载更多
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档