51CTO博客开发
本文重点讲述类型的生命周期。 类型的生命周期涉及到:类的装载、jvm体系结构、垃圾回收机制。 为什么要讲jvm体系结构?因为类的装载和垃圾回收机制都和jvm体系结构息息相关。 那么什么是jvm体系结构呢? 当jvm运行起来的时候,它会向系统申请一片内存区(不同的jvm实现可能不同,有些可以使用虚拟内存),将这块内存分出一部分存储许多东西,例如:程序创建的对象,传递给方法的参数,返回值,
一、char[]、String、byte[]转换 首先需要清楚JAVA中这3种类型的区别 byte是字节,byte[]是字节数组,是字符在计算机中的实际存储。字节如何转换成字符,要看用什么编码。如果用UTF-8编码的话,一个字节是不能转成一个中文字符的 char是字符,char[]是字符数组,其实也就是字符串。String本质上就是char[]。char[]和String之
1 术语和定义 规则:编程时强制必须遵守的原则。 建议:编程时必须加以考虑的原则。 格式:对此规范格式的说明。 说明:对此规范或建议进行必要的解释。 示例:对此规范或建议从正、反两个方面给出例子。 II. 排版规范 A. 规
反射 Java程序中的各个java类属于同一类事物,描述这里类的java类就叫做Class。 Class类代表Java类,它的各个示例对象分别在对应各个类在内存中的字节码。 什么是字节码? 一个类被加载器加载到内存中占有一片存储空间,这个空间里面的内容就说字节码; 不同类的字节码是不同的,所以它们在内存中的内容是不同的,这一个个空间可以分别用故意个个对象来表示,且这些对象具有相同的类型C
Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,本文会试图澄清这一概念。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。本文会让你了解什么是影子clone与深度clone,认识它们的区别、优点及缺点。 看到这个标题,是不是有点困惑:Java语言明确说明取消了指针,因为指针往往是
字节流 InputStream OutputStream 字符流 Reader Writer 他们都是抽象类 具体实现 字节流 FileInputStream FileOutputStream 字符流 FileReader FileWriter 字符流处理的单元为2个字节的Unic
Java程序员有许多应遵循的守则或最佳实践方式。本文概述了每个开发者最应该遵循的10条守则或戒律,如果不遵循它们,将会导致灾难性后果。 1. 为代码添加注释(Add comments to your code). – 每个人都知道这一点,但不是每个人都会这么做。你有多少次“忘记”添加注释了?确实,注释不会为你的程序增加任何函数功能。但是,有多少次,看到2周前写
面试的时候,经常会遇到这样的笔试题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和静态块,它们只包含一些简单的输出字符串到控制台的代码,然后让我们写出正确的输出结果。这实际上是在考察我们对于类的初始化知识的了解。 首先,我们先看看下面的代码,这就是很经典的考察方式。 public class InitField { &nb
本文主要通过分析Java内存分配的栈、堆以以及常量池详细的讲解了其的工作原理。 一、java虚拟机内存原型 寄存器:我们在程序中无法控制栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中堆:存放用new产生的数据静态域:存放在对象中用static定义的静态成员常量池:存放常量非RAM存储:硬盘等永久存储空间。 二、常量池
说明:先从整体介绍了Java集合框架包含的接口和类,然后总结了集合框架中的一些基本知识和关键点,并结合实例进行简单分析。 一、综述 所有集合类都位于java.util包下。集合中只能保存对象(保存对象的引用变量)。(数组既可以保存基本类型的数据也可以保存对象)。 当我们把一个对象放入集合中后,系统会把所有集合元素都当成Object类的实例进行处理。从JDK1.5以后,这种状态得到了改进:可以
面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton、Decorator、Observer这样的设计模式,而不重视面向对象的分析和设计。甚至还有经验丰富的Java程序员没有听说过OOPS和SOLID设计原则,他们根本不知道设计原则的好处,也不知道如何依照这些原则来进行编程
一、Java内存分配 1、 Java有几种存储区域? * 寄存器 -- 在CPU内部,开发人员不能通过代码来控制寄存器的分配,由编译器来管理 * 栈 -- 在Windows下, 栈是向低地址扩展的数据结构,是一块连续的内存的区域,即栈顶的地址和栈的最大容量是系统预先规定好的。
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号