
Java基础
零碎de記憶
这个作者很懒,什么都没留下…
展开
-
new String(“123“)创建了几个对象?
一、前言 String 对象可谓再熟悉不过了,与此相关的面试题经常会引出内存性能优化的问题,本篇主要以new String("123")创建了几个对象为例记录。二、你能回答正确吗?String a = "123"; 如上 a 定义的为常量;String b = a +"456"; 如上 b 为变量,为啥? 难道常量拼接常量得到的是变量吗? ...转载 2019-10-19 19:34:46 · 3239 阅读 · 0 评论 -
equals() 和 == 的区别 以及 重写equals()时是否必须重写hashCode()
一、初步了解在JVM中的内存分配机制 在JVM中,内存可分为堆内存和栈内存,它们两者的区别是:当我们创建一个对象 (new Object) 时,会调用对象的构造方法来开辟空间,将对象数据存储到堆内存中,同时在栈内存中生成对应的引用,当我们在后续代码中调用的时候用的都是栈内存中的引用。而对于方法中声明的基本类型变量 (局部变量),每当程序调用方法时,都会将该变量存储到方法栈内存中,如果是在...原创 2017-09-26 19:18:14 · 457 阅读 · 0 评论 -
如何在背景图上添加控件
1.在JFrame窗体的背景图片上添加控件 一、JFrame的层次结构 JFrame是由JRootPane根面板组成的,而JRootPane是由GlassPane和JLayeredPane两个面板组成的,而JLayeredPane是由ContentPane(放各种组件)和JMenuBar(放菜单栏)两个面板组成的。我们重点是关注JLayeredPa原创 2017-11-29 15:18:49 · 2389 阅读 · 0 评论 -
finally代码块一定会执行吗?
深度解析Finally 一、首先在大家的印象中,无论程序是否出现异常,Finally代码块是一定会执行的。这个观点可能会让大家有些失望了,答案是否定的。接下来就让我来详细的给大家讲解一下吧。案例1:package com.test;public class MyTest {...原创 2017-11-06 10:56:19 · 30710 阅读 · 41 评论