深圳幻海软件技术有限公司 欢迎您!

  • new String

    newString一、String1.基本特性内部结构jdk8及以前,使用的是char[]jdk8以后,使用的是byte[]+字符编码标识。不可变性1、通过字面量的方式给一个字符串赋值,是直接声明在字符串常量池中。2、字符串常量池中是不会存储相同内容的字符串的。3、intern()方法:如果字符串常

  • (Java)设计模式:结构型

    前言这篇博文续接的是UML建模、设计原则、创建型设计模式、行为型设计模式,有兴趣的可以看一下3.3、结构型这些设计模式关注类和对象的组合。将类和对象组合在一起,从而形成更大的结构*3.3.1、proxy代理模式定义:为某对象提供一种代理以控制对该对象的访问。即:客户端通过代理间接地访问该对象,从而限

  • 设计模式之观察者模式

    观察者模式是极其重要的一个设计模式,也是我几年开发过程中使用最多的设计模式,本文首先概述观察者模式的基本概念和Demo实现,接着是观察者模式在Java和Spring中的应用,最后是对观察者模式的应用场景和优缺点进行总结。一、概念理解观察者模式:定义对象之间的一种一对多的依赖关系,使得每当一个对象的状

  • JavaScript:原型(prototype)

    面向对象有一个特征是继承,即重用某个已有类的代码,在其基础上建立新的类,而无需重新编写对应的属性和方法,继承之后拿来即用;在其他的面向对象编程语言比如Java中,通常是指,子类继承父类的属性和方法;我们现在来看看,JS是如何实现继承这一个特征的;要说明这个,我们首先要看看,每个对象都有的一个隐藏属性

  • 面向对象

    1|0一、理解面向对象面向对象程序设计以对象为核心,该方法认为程序由一系列对象组成。类是对现实世界的抽象,包括表示静态属性的数据和对数据的操作,对象是类的实例化。面向对象有三个特点:封装性、继承性、多态性。封装性将描述每一个对象的属性以及其行为的程序代码组装到一起,一并封装在一个有机的实体中,把它们

  • JavaScript中的Error错误对象与自定义错误类型

    ErrorError是JavaScript语言中的一个标准的内置对象,专门用于处理JS开发中的运行时错误。当我们的JS代码在运行过程中发生错误的话,就会抛出Error对象,整个程序将会中断在错误发生的代码处,不再继续执行,这也是错误类型必须重视的原因:它会导致页面无法显示或者功能失效。Error是J

  • C++ 虚函数表剖析

    一、概述为了实现C++的多态,C++使用了一种动态绑定的技术。这个技术的核心是虚函数表(下文简称虚表)。二、类的虚表每个包含了虚函数的类都包含一个虚表。我们知道,当一个类(A)继承另一个类(B)时,类A会继承类B的函数的调用权。所以如果一个基类包含了虚函数,那么其继承类也可调用这些虚函数,换句话说,

  • 照猫画虎把SpringBoot搬到K8s,居然翻船咧,体验到了Go在云原生的两个优势

    这是我们K8s快速入门与实践的最后一篇啦,上一个实践篇里我们讲了怎么从写第一行代码开始到把Go服务部署到K8s上都有哪些步骤,每一步该怎么做。今天这篇我们再更新一个怎么把SpringBoot应用部署到K8s上,本来我是想偷偷懒、照猫画虎把上节课的改改镜像名不就行了,没想到,居然翻车咧,真的是想偷点懒

  • Synchronized 的几种错误用法,你会了吗?

    大家好,我是指北君。synchronized在我们平常工作中也是挺常用的,对于摆脱多线程问题很有帮助。但是如果synchronized被错误使用时,可能会给我们带来很多麻烦。在本文中,我们将讨论与同步相关的一些不好的做法,以及针对每个使用情况的更好的方法。同步的原则一般来说,我们应该只对那些我们确信

  • 对象很大,你忍一下

    本文转载自微信公众号「码海」,作者坤哥。转载本文请联系码海公众号。你好,我是坤哥上一篇Java进阶之字节码剖析中我曾经提到这么一段话int[128][2],int[256]这两个数组看起来一样,但实际上前者比后者多了246%的额外开销针对这句话我收到了几位读者的私信,表示不明白为啥不过一个简简单的二

  • Java程序员必备基础结构图

    前言最近看了深入理解Java虚拟机第三版,整理了一些基础结构图,算是比较全的了,做一下笔记,大家一起学习。1.Java虚拟机运行时数据区图JVM内存结构是Java程序员必须掌握的基础。程序计数器 程序计数器,可以看作当前线程所执行的字节码的行号指示器 它是线程私有的。Java虚拟

  • 在 Java 里找对象需要见家长考核吗?

    程序员们经常会调侃说,现在找对象太难了,看我们代码里找对象多容易,想要的时候就new一个。玩笑归玩笑,实际对代码来说,对象不是你想new想new就能new的。像真实社会里会见见家长,了解家庭等等,在实际的代码运行中,一个也不少。一个对象new的过程,也是要经过层层「考核」的。今天一起看下,代码里ne

  • 前端需要了解的9种设计模式

    什么是设计模式?设计模式是对软件设计开发过程中反复出现的某类问题的通用解决方案。设计模式更多的是指导思想和方法论,而不是现成的代码,当然每种设计模式都有每种语言中的具体实现方式。学习设计模式更多的是理解各种模式的内在思想和解决的问题,毕竟这是前人无数经验总结成的优秀实践,而代码实现则是对加深理解的辅

  • Android Context完全解析你所不知道的各种细节

    前几篇文章,我也是费劲心思写了一个ListView系列的三部曲,虽然在内容上可以说是绝对的精华,但是很多朋友都表示看不懂。好吧,这个系列不仅是把大家给难倒了,也确实是把我给难倒了,之前为了写瀑布流ListView的Demo就写了大半个月的时间。那么本篇文章我们就讲点轻松的东西,不去分析那么复杂的源码

  • 7个令人兴奋的JavaScript新特性

    【51CTO.com原创稿件】前言一个ECMAScript标准的制作过程,包含了Stage0到Stage4五个阶段,每个阶段提交至下一阶段都需要TC39审批通过。本文介绍这些新特性处于Stage3或者Stage4阶段,这意味着应该很快在浏览器和其他引擎中支持这些特性。一、类的私有变量最新提案之一是在

  • Java中的JVM字符串性能优化

     一、引言String对象是我们使用很频繁的一个对象类型,但它的性能问题却是很容易被忽略的。String对象作为Java语言中重要的数据类型,是内存中占据空间较大的一个对象。高效地使用字符串,可以提升系统的整体性能。二、String对象的实现在Java语言中,Sun公司的工程师们对Stri

  • 浏览器垃圾回收机制与 Vue 项目内存泄漏场景分析

     1.介绍浏览器的Javascript具有自动垃圾回收机制(GC:GarbageCollecation),也就是说,执行环境会负责管理代码执行过程中使用的内存。其原理是:垃圾收集器会定期(周期性)找出那些不在继续使用的变量,然后释放其内存。但是这个过程不是实时的,因为其开销比较大并且GC时

  • Java程序员编程性能优化必备的34个小技巧

     1.尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:控制资源的使用,通过线程同步来控制资源的并发访问;控制实例的产生,以达到节约资源的目的;控制数据共享,在不建立直接关联的条件下,让多

  • 搞定Java垃圾回收,就这一篇!

    之前上学的时候有这个一个梗,说在食堂里吃饭,吃完把餐盘端走清理的,是C++程序员,吃完直接就走的,是Java程序员。图片来自Pexels确实,在Java的世界里,似乎我们不用对垃圾回收那么的专注,很多初学者不懂GC,也依然能写出一个能用甚至还不错的程序或系统。但其实这并不代表Java的GC就不重要。

  • Vue使用技巧和项目中遇到的问题

    这里给大家分享一下Vue中的一些技巧,希望对大家有用处。(话不多说上代码)1.Vue路由拦截浏览器后退实现表单保存类似需求(为了防止用户突然离开,没有保存已输入的信息。)复制//在路由组件中: mounted(){ }, beforeRouteLeave (t

推荐阅读