![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java学习笔记
文章平均质量分 67
charset_utf-8
这个作者很懒,什么都没留下…
展开
-
JVM自动内存管理机制之运行时数据区域
以下内容为本人学习Java虚拟机自动内存管理机制之运行时数据区域的笔记,适合没有时间,但想对运行时数据区域有所了解的人,想更深入了解请看《深入理解java虚拟机》这本书。Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Ja原创 2017-05-11 15:26:22 · 317 阅读 · 0 评论 -
JVM中Java类的加载机制
1、什么是类的加载类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。类加载器并不需要等到某个类被“首次主动使转载 2017-08-13 17:29:14 · 554 阅读 · 0 评论 -
关于java中比较所用的"=="与s.equals()方法的不同
在java中,对字符串的比较有两种方式,一种是用"==",另一种是用s.equals()方法,这两个是有区别的,"=="方法是判断两个字符串的地址是否相同,即如果有a,b两个字符串,他们都指向同一个对象,即同一个地址,则用"=="返回true;而如果不是指向同一个对象,即使两个字符串的内容完全相等,"=="方法也会返回false‘;而s.equals()方法则是判断字符串的内容是否相等,只要内容相原创 2017-05-10 10:32:47 · 1657 阅读 · 0 评论 -
Java异常处理机制
在 Java 应用程序中,异常处理机制为:抛出异常,捕捉异常。 抛出异常:当一个方法出现错误引发异常时,方法创建异常对象并交付运行时系统,异常对象中包含了异常类型和异常出现时的程序状态等异常信息。运行时系统负责寻找处置异常的代码并执行。 捕获异常:在方法抛出异常之后,运行时系统将转为寻找合适的异常处理器(exception handler)。潜在的异常处原创 2017-08-13 15:08:18 · 278 阅读 · 0 评论 -
java异常概述
异常指不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。异常是一个事件,它发生在程序运行期间,干扰了正常的指令流程。Java通 过API中Throwable类的众多子类描述各种不同的异常。因而,Java异常都是对象,是Throwable子类的实例,描述了出现在一段编码中的 错误条件。当条件生成时,错误将引发异常。 Java异常类层次结构图:原创 2017-08-13 13:57:51 · 254 阅读 · 0 评论 -
String s=new String("xyz")及String s="a"+"b"+"c"+"d";创建几个String对象的问题
首先让我们了解几个概念:栈:由JVM分配区域,用于保存线程执行的动作和数据引用。堆:由JVM分配的,用于存储对象等数据的区域。常量池constant pool :在堆中分配出来的一块存储区域,用于存储显式 的String,float或者integer.这是一个特殊的共享区域,可以在内存中共享的不经常改变的东西,都可以放在这里。进入正题:String a = "abc";①St...原创 2019-12-26 11:03:06 · 913 阅读 · 0 评论 -
java中Map,List与Set的区别
Set,List,Map的区别java集合的主要分为三种类型:Set(集)List(列表)Map(映射)要深入理解集合首先要了解下我们熟悉的数组:数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),而JAVA集合可以存储和操作数目不固定的一组数据。 所有的JAVA集合都位于 java.util包中! JAVA集合只能存放引用类型的的数据,不能存转载 2017-08-13 11:59:22 · 320 阅读 · 1 评论 -
Enumeration和Iterator的区别
Enumeration和Iterator的主要区别: (1)java中的集合类都提供了返回Iterator的方法,就是迭代器,它和Enumeration(枚举)的主要区别其实就是Iterator可以删除元素,但是Enumration却不能。 (2)还有一点要注意的就是,使 用Iterator来遍历集合时,应使用Iterator的remove()方法来删除集合中的元素,使用集合的remov原创 2017-08-12 23:11:38 · 641 阅读 · 0 评论 -
Java集合类框架汇总
一、集合与数组数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用。集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用。二、层次关系如图所示:图中,实线边框的是实现类,折线边框的是抽象类,而点线边框的是接口Collection接口是集合类的根接口,Java中没有提供这个接口的直转载 2017-08-12 22:37:37 · 232 阅读 · 0 评论 -
Java的自动装箱与拆箱机制
自动装箱和拆箱从Java 1.5开始引入,目的是将原始类型值转自动地转换成对应的对象。自动装箱与拆箱的机制可以让我们在Java的变量赋值或者是方法调用等情况下使用原始类型或者对象类型更加简单直接。如果你在Java1.5下进行过编程的话,你一定不会陌生这一点,你不能直接地向集合(Collections)中放入原始类型值,因为集合只接收对象。通常这种情况下你的做法是,将这些原始类型的值转换成对原创 2017-08-12 15:04:17 · 482 阅读 · 0 评论 -
创建线程的三种方式及对比
一:继承Thread类创建线程类class PrimeThread extends Thread { long minPrime; PrimeThread(long minPrime) { this.minPrime = minPrime; } public void run() { //转载 2017-08-12 15:27:32 · 299 阅读 · 0 评论 -
java设计模式之创建模式(工厂模式,Builder,单例,原型)
工厂模式定义:提供创建对象的接口.为何使用?工厂模式是我们最常用的模式了,著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。为什么工厂模式是如此常用?因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑实用工厂模式,原创 2017-08-10 19:46:55 · 585 阅读 · 0 评论 -
java反射机制详解
本文转载自:http://www.cnblogs.com/lzq198754/p/5780331.htmlJava反射机制详解| |目录1反射机制是什么2反射机制能做什么3反射机制的相关API·通过一个对象获得完整的包名和类名·实例化Class类对象·获取一个对象的父类与实现的接口·获取某个类中的全部构造函数 - 详见下例·通过反射机制实例化一个类的对象·获取某个类转载 2017-07-04 15:16:54 · 221 阅读 · 0 评论 -
JVM里java对象的创建及内存分配和访问定位
对象的创建Java是一门面向对象的编程语言,在Java程序运行过程中无时无刻都有对象被创建出来。在语言层面上,创建对象(例如克隆、反序列化)通常仅仅是一个new关键字而已,而在虚拟机中,对象(文中讨论的对象限于普通Java对象,不包括数组和Class对象等)的创建又是怎样一个过程呢?虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检原创 2017-07-03 18:50:11 · 605 阅读 · 0 评论 -
JVM垃圾回收机制
说起垃圾收集(Garbage Collection,GC),大部分人都把这项技术当做Java语言的伴生产物。事实上,GC的历史比Java久远,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。当Lisp还在胚胎时期时,人们就在思考GC需要完成的3件事情: 哪些内存需要回收? 什么时候回收? 如何回收?原创 2017-07-03 18:29:39 · 190 阅读 · 0 评论