一、克隆的原理与应用 clone在堆上分配内存,分配的内存和源对象(即调用clone方法的对象)相同,然后再使用原对象中对应的各个域,填充新对象的域, 填充完成之后,clone方法返回,一个新的相同的对象被创建,同样可以把这个新对象的引用发布到外部。如果,想要对该对象进行处理,又想保留原来数据进行接 Read More
泛型这一章不知道是因为翻译的原因还是什么,感觉《编程思想》讲的混乱无比。花了很多的时间研究泛型,现在力求用最简单的语言,最简明的示例把这一章说清楚。 前言 还是要来区分一下细节的概念,对理解泛型影响还是蛮大的。 1、<T>与不在<>中的T的区别 输出结果: test 结果分析:<T>这里的T叫类型参 Read More
前言 在开始介绍类型信息之前一定要区分一些概念: 1、静态类型语言与动态类型语言 静态类型语言:在编译期进行类型检查的语言(例如,Java)。(例如 int i = 3;) 动态类型语言:在运行期进行类型检查的语言(例如,JavaScript)。最明显的特征为变量没有类型值有类型(如,var=3;) Read More
一、Scanner简述 Scanner扫描器类本质上是由正则表达式实现的,可以接受任何能产生数据的数据源对象,默认以空白符进行分词(包括\n等),使用各种next方法进行扫描匹配,获取匹配的数据。 二、使用实例 1、示例一:从控制台读取数据 输出结果: Hello world(输入)Hello wo Read More
一、正则表达式的“\”问题 在Java的字符串中"\"有两个功能 (一)代表特殊字符:\t代表制表符,\n代表换行....等。 (二)代表转义: 在字符串中,如果出现 \ 及 " 等会造成代码歧义,所以要用\"进行转义 在Java的正则表达式中\也是表示两个功能 (一)代表特殊功能的字符:如\d代表 Read More
格式化输出这一部分的内容非常锁碎,掌握基础就好,用到什么查什么就好了。 Formatter类 1、常规类型、字符类型和数值类型的格式说明符的语法如下: 可选的 argument_index 是一个十进制整数,用于表明参数在参数列表中的位置。第一个参数由 "1$" 引用,第二个参数由 "2$" 引用, Read More
这一节来学习String的特性和方法。 一、String对象的不变性 不变性:String对象是由一个final char[] value 数组实现的,因此String对象是不可变的。任何看起来改变String对象的行为,其实质就是创建了一个新的对象。 示例一: 输出结果: s1: abcs2: A Read More
一、异常与记录日志 import java.io.PrintWriter; import java.io.StringWriter; import java.util.logging.Logger; class LoggingException extends Exception{ private Read More
一、异常基本概念简介 1、“异常”的理解 异常和语法错误是不一样的,语法错误程序会马上又小红点,但是异常是可能会发生的不一定发生的“不好的事情”。 2、Java的异常机制 Java异常使用终止模型,即假设“不好的事情”非常非常“关键,一旦发生“不好的事情”,就不可以在回到异常抛出点继续执行。 Jav Read More
1、Arrays.asList()底层数组作为物理层实现、所以返回的List大小不可更改,即不可以做add()、remove()操作,并且对List所做的任何变动都会致使原数组发生变动。 public class ArraysAsList { public static void main(Stri Read More