随笔分类 - Java基础
摘要:1.使用try...catch捕捉异常 如果执行try块里的业务逻辑代码时出现异常,系统自动生成一个异常对象,这个异常对象会被提交给Java的运行时环境,把这个过程叫做“抛出异常” java的运行时环境受到异常对象后,就会寻找这个异常对象的处理catch语句,如果找到合适的,就把这个异常对象交给ca
阅读全文
摘要:类型参数 在定义泛型类或声明泛型类的变量时,使用尖括号来指定形式类型参数。形式类型参数与实际类型参数之间的关系类似于形式方法参数与实际方法参数之间的关系,只是类型参数表示类型,而不是表示值。 命名类型参数 推荐的命名约定是使用大写的单个字母名称作为类型参数。这与 C++ 约定有所不同(参阅 附录 A
阅读全文
摘要:Java集合分为Set、List、Queue、Map四种体系,集合只能保存对象 1. Set代表无序、不可重复的集合,像一个罐子,但是罐子里面的东西不能重复 2.List代表有序、重复的集合,像数组一样,可以记住每次添加元素的顺序,长度可变 3.Map代表具有映射关系的集合,Map也像一个罐子,只是
阅读全文
摘要:三者都实现了CharSequence接口,因此CharSequence可认为是一个字符串的协议接口 1.String类是不可变类,即一旦一个String对象被创建后,包含在这个对象中的字符序列是不可改变的,直至这个对象被销毁; 我们常常定义的时候 String str=new String("定义了
阅读全文
摘要:PS: Java程序在不同操作系统上运行时,可能需要取得平台相关的属性,或者调用平台命令来完成特定功能。java提供了System类与Runtime类来与程序的运行平台进行交互。 System类: 1.代表当前java程序的运行平台,程序不能创建System类的对象,System类提供了一些类变量和
阅读全文
摘要:内部类的类名不再是简单地由内部类的类名组成,它实际上还把外部类的类名作为一个命名空间,作为内部类类名的限制。因此子类中的内部类和父类中的内部类不可能完全同名 ,即使二者所包含的内部类的类名相同,但因为他们所处的外部类空间不同,所以它们不可能完全同名,也不可能重写 生成两个class 文件,一个是In
阅读全文
摘要:1. 程序最终都将在内存中执行,变量只有在内存中占有一席之地时才能被访问。 类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。 在一个类
阅读全文
摘要:关于对象的创建过程一般是从new指令(我说的是JVM的层面)开始的(具体请看图1),JVM首先对符号引用进行解析,如果找不到对应的符号引用,那么这个类还没有被加载,因此JVM便会进行类加载过程。符号引用解析完毕之后,JVM会为对象在堆中分配内存,HotSpot虚拟机实现的JAVA对象包括三个部分:对
阅读全文
摘要:1.编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。 当编译时类型和运行时类型不一致时,就会出现所谓的多态。 因为子类是一个特殊的父类,因此java允许把一个子类对象直接赋给一个父类的引用变量,无需任何类型转换(向上转型) 引用变量在编译阶段只能通过编译时类型所具有的方
阅读全文
摘要:一、基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768~32717,默认值0 int:整型,用于存储整数,在内在中占32位,即4个字节,取值范围-2147
阅读全文
摘要:前言:本文主要想讲一下Java虚拟机的故事, 可能有点偏门,不妥之处欢迎留言交流。 第一回 陌生警察 我出生在C盘下面一个很深层次的目录下, 也不知道是谁把我放到这里的。 我一直在睡觉,外边的日出日落,风雨雷电和我一点关系都没有。 直到有一天,有个家伙咣咣咣砸我房门把我叫醒。 这个家伙穿着像警察的制
阅读全文
摘要:我是一个线程,我一出生就被编了个号:0x3704,然后被领到一个昏暗的屋子里,在这里我发现了很多和我一模一样的同伴。 我身边的同伴0x6900 待的时间比较长,他带着沧桑的口气对我说:“我们线程的宿命就是处理包裹。把包裹处理完以后还得马上回到这里,否则可能永远回不来了。” 我一脸懵懂,“包裹,什么包
阅读全文

浙公网安备 33010602011771号