随笔分类 -  java基础

摘要:一.你了解String类吗? 二.深入理解String、StringBuffer、StringBuilder 三.不同场景下三个类的性能测试 四.常见的关于String、StringBuffer的面试题(辟谣网上流传的一些曲解String类的说法) 一.你了解String类吗? 想要了解一个类,最好 阅读全文
posted @ 2018-08-01 22:55 xdyixia 阅读(439) 评论(0) 推荐(0) 编辑
摘要:1,简介 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常。异常发生时,是任程序自生自灭,立刻退出终止,还是输出错误给用户?或者用C语言风格:用函数返回值作为执行状态?。 Java提供了更加优秀的解决办法:异常处理机制。 异常处理机制能让程序在异常发生时,按照代码的 阅读全文
posted @ 2018-08-01 21:22 xdyixia 阅读(301) 评论(0) 推荐(0) 编辑
摘要:1,Java集合如Map、Set、List(当然stack也是)等所有集合只能存放引用类型数据,它们都是存放引用类型数据的容器,不能存放如int、long、float、double等基础类型的数据。 为什么? Java集合中实际存放的只是对象的引用,每个集合元素都是一个引用变量,实际内容都放在堆内存 阅读全文
posted @ 2018-07-17 20:36 xdyixia 阅读(297) 评论(0) 推荐(0) 编辑
摘要:1、用new语句创建对象,这是最常见的创建对象的方法。 2、通过工厂方法返回对象,如:String str = String.valueOf(23); 3、运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例 阅读全文
posted @ 2018-07-17 17:33 xdyixia 阅读(2447) 评论(0) 推荐(0) 编辑
摘要:要想判断两个对象是否相等,不能通过比较两个对象的引用是否相等,这是永远都得不到相等的结果的,因为两个对象的引用永远不会相等,所以正确的比较方法是直接比较这两个对象,比较这两个对象的实质是不是一样的,即这两个对象里面的内容是不是相同的,通过比较这两个对象的属性值是否相同而决定这两个对象是否相等。 下面 阅读全文
posted @ 2018-07-17 16:42 xdyixia 阅读(295) 评论(0) 推荐(0) 编辑
摘要:哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法: 根据这个方法的声明可知,该方法返回一个int类型的数值,并且是本地方法,因此在Object类中并没有给出具体的实现。 为何Object类需要这样一个方法?它有什么作用呢 阅读全文
posted @ 2018-07-17 16:13 xdyixia 阅读(355) 评论(0) 推荐(0) 编辑
摘要:一、序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中; 2) 在网络上传送对象的字节序列。 在很多应用中,需要对某些对象进行序列化,让它们 阅读全文
posted @ 2018-07-17 16:09 xdyixia 阅读(258) 评论(0) 推荐(0) 编辑
摘要:两种不同的克隆方法,浅克隆(ShallowClone)和深克隆(DeepClone)。 在Java语言中,数据类型分为值类型(基本数据类型)和引用类型,byte、short、int、long、flout、double、boolean、char8种简单数据类型,引用类型包括类、接口、数组等复杂类型。浅 阅读全文
posted @ 2018-07-17 11:35 xdyixia 阅读(327) 评论(0) 推荐(0) 编辑
摘要:今天看到 java.lang.System 类和 java.lang.String 类都是被 final 关键字修饰的。所以来看一下final关键字。 (一个小说明:System类是不能被实例化的,这是因为它的构造器时私有的即加了private,和final没有关系) 在Java中,final关键字 阅读全文
posted @ 2018-07-06 11:43 xdyixia 阅读(215) 评论(0) 推荐(0) 编辑
摘要:1,反射的概念 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 java程序的加载过程:源文件 .java 经过编译(javac.exe) 阅读全文
posted @ 2018-07-04 20:13 xdyixia 阅读(349) 评论(0) 推荐(0) 编辑
摘要:因为在System.out.println(类的对象名)时,类的对象名是个引用,如果不重写,就输出引用地址。 其实实际是这样的System.out.println(类的对象名.toString()),只是我们平时默认不用写,它自动加上。 阅读全文
posted @ 2018-07-03 20:10 xdyixia 阅读(1630) 评论(0) 推荐(0) 编辑
摘要:这里拿了用数组构造栈的一段代码说明一下 1)new StackArray()即无参的实例化过程: 找到无参构造器 > 初始化成员变量(引用类型初始化为null,int初始化为0) > this(10)调用有参构造器 > 来到有参构造器并初始化赋值形参(initialSize=10)> 成员变量赋值( 阅读全文
posted @ 2018-06-14 17:42 xdyixia 阅读(3961) 评论(0) 推荐(0) 编辑
摘要:1,C/C++中的指针、引用、句柄 C++primer中对 对象的定义:对象是指一块能存储数据并具有某种类型的内存空间,一个对象a,它有值和地址&a。 指针:p也是对象,它同样有地址&p和存储的值p,只不过,p存储的数据类型是数据的内存地址。 对象有常量(const)和变量之分,既然指针本身是对象, 阅读全文
posted @ 2018-06-04 20:15 xdyixia 阅读(384) 评论(0) 推荐(0) 编辑
摘要:java中的数据类型 java语言的数据类型包括两种,基本数据类型和引用数据类型。 定义 基本数据类型:变量名指向具体的数值。 引用数据类型:变量名指向存数据对象的内存地址,即变量名指向hash值。 基本数据类型:整数类型(byte,short,int,long);浮点类型(float,double 阅读全文
posted @ 2018-05-21 15:02 xdyixia 阅读(229) 评论(0) 推荐(0) 编辑
摘要:当我们在数据不确定时,定义变量进行存储 形式:数据类型 变量名 = 初始化值; 其中数据类型包括(1)基本数据类型(数值型(整数类型(int,short,byte,long),浮点类型(float,double)),字符型(char),布尔型(boolean)); (2)引用数据类型(类(class 阅读全文
posted @ 2018-01-05 09:36 xdyixia 阅读(215) 评论(0) 推荐(0) 编辑
摘要:1,new一个对象时代码的执行顺序 (1)加载父类(以下序号相同,表明初始化是按代码从上到下的顺序来的) 1.为父类的静态属性分配空间并赋于初值 1.执行父类静态初始化块; (2)加载子类 2.为子类的静态属性分配空间并赋于初值 2.执行子类的静态的内容; (3)加载父类构造器 3.初始化父类的非静 阅读全文
posted @ 2018-01-04 20:41 xdyixia 阅读(4592) 评论(0) 推荐(1) 编辑
摘要:1 如何将字串 String 转换成整数 int? 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([String],[int radix]); 2). int i = Integer.valueOf(my_ 阅读全文
posted @ 2018-01-02 22:37 xdyixia 阅读(654) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示