- 博客(824)
- 资源 (20)
- 问答 (4)
- 收藏
- 关注
从头认识java-13.4 泛型方法的使用
这一章节我们来讨论一下泛型方法的使用。泛型除了可以作用在类、接口上面,还可以作用在方法上面。1.例子package com.ray.ch13;public class Test { public <T> void test(T x) { System.out.println(x.getClass().getName()); } public static voi...
2015-12-11 16:34:00 194
原创 从头认识java-13.3 泛型接口的使用
这一章节我们来讨论一下泛型接口的使用。我们以生成器为例子(generator),生成器是工厂方法的一种运用,主要用来创建对象,一般使用工厂方法都是需要输入参数以便取得不同的对象,但是生成器是生成一系列的对象。代码:package com.ray.ch13;import java.util.Iterator;import java.util.Random;public class Test
2015-12-11 11:41:45 1606
从头认识java-13.3 泛型接口的使用
这一章节我们来讨论一下泛型接口的使用。我们以生成器为例子(generator),生成器是工厂方法的一种运用,主要用来创建对象,一般使用工厂方法都是需要输入参数以便取得不同的对象,但是生成器是生成一系列的对象。代码:package com.ray.ch13;import java.util.Iterator;import java.util.Random;public class ...
2015-12-11 11:41:00 128
原创 从头认识java-13.2 利用元组的方式返回多类型对象
这一章节我们来讨论一下利用元组的方式返回多类型对象。1.定义元组@SuppressWarnings("hiding")class Tuple { public final A a; public final B b; public Tuple(A a, B b) { this.a = a; this.b = b; }}这里可能有人会问到安全的问题,我们做出一些解释:大家注意
2015-12-10 11:21:59 2596
从头认识java-13.2 利用元组的方式返回多类型对象
这一章节我们来讨论一下利用元组的方式返回多类型对象。1.定义元组@SuppressWarnings("hiding")class Tuple<A, B> { public final A a; public final B b; public Tuple(A a, B b) { this.a = a; this.b = b; }}这里可能有人会问到安全的...
2015-12-10 11:21:00 406
原创 从头认识java-13.1 泛型与容器(容器的演变)
这一章节我们来讨论一下泛型与容器,准确来说是由于容器的需求而产生泛型的需求。我们平常在编程的时候,大部分都是用了容器来装载对象,我们来看一下容器的演变。1.普通容器package com.ray.ch11;public class Test { public static void main(String[] args) { Holder holder = new Holder(new
2015-12-10 09:31:41 1841
从头认识java-13.1 泛型与容器(容器的演变)
这一章节我们来讨论一下泛型与容器,准确来说是由于容器的需求而产生泛型的需求。我们平常在编程的时候,大部分都是用了容器来装载对象,我们来看一下容器的演变。1.普通容器package com.ray.ch11;public class Test { public static void main(String[] args) { Holder holder = new Holder(...
2015-12-10 09:31:00 137
原创 从头认识java-12.6 接口与类型信息(怎么绕过接口直接调用类的所有方法)
这一章节我们来讨论一下接口与类型信息。在之前的章节里面我们提到接口,父类引用子类对象,然后把方法给缩窄了,但是我们这一章节学习到反射,这个约束就变得没有那么严格。我们来看看下面的例子:package com.ray.ch11;public class Test { public static void main(String[] args) { Person man = new Man(
2015-12-10 08:49:55 2432
从头认识java-12.6 接口与类型信息(怎么绕过接口直接调用类的所有方法)
这一章节我们来讨论一下接口与类型信息。在之前的章节里面我们提到接口,父类引用子类对象,然后把方法给缩窄了,但是我们这一章节学习到反射,这个约束就变得没有那么严格。我们来看看下面的例子:package com.ray.ch11;public class Test { public static void main(String[] args) { Person man = new ...
2015-12-10 08:49:00 110
原创 从头认识java-12.5 代理以及动态代理
这一章节我们讲述一下代理以及动态代理。1.为什么需要代理?答案:有一些操作你不想整合到逻辑代码里面,因此需要代理来做这个事情。例如:日志、监控等下面将演示一个简单的代理:package com.ray.ch11;public class Test { public static void test(InterFace interFace) { interFace.doSomething(
2015-12-08 21:17:34 2219
从头认识java-12.5 代理以及动态代理
这一章节我们讲述一下代理以及动态代理。1.为什么需要代理?答案:有一些操作你不想整合到逻辑代码里面,因此需要代理来做这个事情。例如:日志、监控等下面将演示一个简单的代理:package com.ray.ch11;public class Test { public static void test(InterFace interFace) { interFace.doSomet...
2015-12-08 21:17:00 86
原创 从头认识java-12.4 利用反射提取类的方法与构造器
这一章节我们来讨论一些利用反射提取类的方法与构造器。1.例子package com.ray.ch11;import java.lang.reflect.Constructor;import java.lang.reflect.Method;public class Test { @SuppressWarnings({ "unchecked", "rawtypes" }) public
2015-12-08 19:58:04 2368
从头认识java-12.4 利用反射提取类的方法与构造器
这一章节我们来讨论一些利用反射提取类的方法与构造器。1.例子package com.ray.ch11;import java.lang.reflect.Constructor;import java.lang.reflect.Method;public class Test { @SuppressWarnings({ "unchecked", "rawtypes" }) pub...
2015-12-08 19:58:00 92
原创 从头认识java-12.3 instanceof、isInstance和isAssignableFrom
这一章节主要讲述一下三个检测对象类型的方法instanceof、isInstance和isAssignableFrom。例子:package com.ray.ch12;public class Test { public static void main(String[] args) { try { Class AClass1 = (Class) Class .forNa
2015-12-07 20:05:08 2806
从头认识java-12.3 instanceof、isInstance和isAssignableFrom
这一章节主要讲述一下三个检测对象类型的方法instanceof、isInstance和isAssignableFrom。例子:package com.ray.ch12;public class Test { public static void main(String[] args) { try { Class<? extends Father> AClass1 ...
2015-12-07 20:05:00 118
原创 从头认识java-12.2 Class对象(4)-泛化
这一章节我们来讨论一下Class对象的泛化。1.为什么需要泛化?代码在编译时就可以进行类型检测,不需要等到运行时才检测类型。 2.例子package com.ray.ch12;public class Test { public static void main(String[] args) { try { Class AClass1 = Class.forName("c
2015-12-04 22:45:49 2951
从头认识java-12.2 Class对象(4)-泛化
这一章节我们来讨论一下Class对象的泛化。1.为什么需要泛化?代码在编译时就可以进行类型检测,不需要等到运行时才检测类型。2.例子package com.ray.ch12;public class Test { public static void main(String[] args) { try { Class AClass1 = Class.forNam...
2015-12-04 22:45:00 134
原创 从头认识java-12.2 Class对象(3)-.class
这一章节我们来讨论一下得到Class对象的另一种方式.class。1.例子package com.ray.ch12;public class Test { public static void main(String[] args) { System.out.println(Person.class.getName()); }}class Person { s
2015-12-04 22:24:04 1905
从头认识java-12.2 Class对象(3)-.class
这一章节我们来讨论一下得到Class对象的另一种方式.class。1.例子package com.ray.ch12;public class Test { public static void main(String[] args) { System.out.println(Person.class.getName()); }}class Person {...
2015-12-04 22:24:00 70
原创 从头认识java-12.2 Class对象(2)-使用与注意点
这一章节我们接着上一章节,继续讲述Class对象的使用与注意点。1.使用例子package com.ray.ch11;public class Test { @SuppressWarnings({ "unchecked", "rawtypes" }) public static void main(String[] args) { try { Class swimmerClass
2015-12-04 15:53:49 1638
从头认识java-12.2 Class对象(2)-使用与注意点
这一章节我们接着上一章节,继续讲述Class对象的使用与注意点。1.使用例子package com.ray.ch11;public class Test { @SuppressWarnings({ "unchecked", "rawtypes" }) public static void main(String[] args) { try { Class<Swimme...
2015-12-04 15:53:00 115
原创 从头认识java-12.2 Class对象(1)-简介
这一章节我们来介绍一下Class对象。在介绍前有几点需要注意的:1.每一个类都有一个Class对象,在jvm的类加载器子系统里面生成。2.类加载器子系统包含类加载器链,但是只有一个原生加载器,原生加载器主要加载javaapi里面的可信的类。3.只有当类被使用的时候才会加载,这个称之为动态加载。4.只有加载了Class,才能new这个类的所有对象。由于前面几点都暂时没有办法证明,只能当概念记住,我们
2015-12-04 15:30:24 1453
从头认识java-12.2 Class对象(1)-简介
这一章节我们来介绍一下Class对象。在介绍前有几点需要注意的:1.每一个类都有一个Class对象,在jvm的类加载器子系统里面生成。2.类加载器子系统包含类加载器链,但是只有一个原生加载器,原生加载器主要加载javaapi里面的可信的类。3.只有当类被使用的时候才会加载,这个称之为动态加载。4.只有加载了Class,才能new这个类的所有对象。由于前面几点都暂时没有办法证明,只能当概...
2015-12-04 15:30:00 85
原创 从头认识java-12.1 为什么需要RTTI(Run-Time Type Identification)?
这一章节我们来讨论一下为什么需要RTTI(Run-Time Type Identification)。答案:RTTI维护类型的信息,为多态机制的实现提供基础。1.怎么为多态的实现提供基础?多态,主要就是通过向上转型,然后通过泛化来父类引用子类对象。例如:package com.ray.ch12;public class Test { public static void main(Strin
2015-12-03 21:16:51 2394
从头认识java-12.1 为什么需要RTTI(Run-Time Type Identification)?
这一章节我们来讨论一下为什么需要RTTI(Run-Time Type Identification)。答案:RTTI维护类型的信息,为多态机制的实现提供基础。1.怎么为多态的实现提供基础?多态,主要就是通过向上转型,然后通过泛化来父类引用子类对象。例如:package com.ray.ch12;public class Test { public static void main...
2015-12-03 21:16:00 145
原创 从头认识java-11.5 扫描输入(2)-scanner的边界与使用正则表达式扫描
这一章节我们来介绍一下scanner的边界与使用正则表达式扫描。1.scanner的边界上一章节我们提到scanner里面有hasNext方法,可以检测是否还有字符串,其实这个就是边界符,检查字符串的边界。package com.ray.ch11;import java.io.BufferedReader;import java.io.IOException;import java.io.
2015-12-03 10:30:45 2752
从头认识java-11.5 扫描输入(2)-scanner的边界与使用正则表达式扫描
这一章节我们来介绍一下scanner的边界与使用正则表达式扫描。1.scanner的边界上一章节我们提到scanner里面有hasNext方法,可以检测是否还有字符串,其实这个就是边界符,检查字符串的边界。package com.ray.ch11;import java.io.BufferedReader;import java.io.IOException;import java...
2015-12-03 10:30:00 235
原创 从头认识java-11.5 扫描输入(1)-简介
这一章节我们来讨论一下扫描输入。因为很多时候我们都需要从文本文件里面读取相应的文本,然后进行处理,在输入到其他地方, 这个时候就需要我们下面介绍的扫描输入。1.通常情况package com.ray.ch11;import java.io.BufferedReader;import java.io.IOException;import java.io.StringReader;impor
2015-12-03 10:03:00 2141
从头认识java-11.5 扫描输入(1)-简介
这一章节我们来讨论一下扫描输入。因为很多时候我们都需要从文本文件里面读取相应的文本,然后进行处理,在输入到其他地方, 这个时候就需要我们下面介绍的扫描输入。1.通常情况package com.ray.ch11;import java.io.BufferedReader;import java.io.IOException;import java.io.StringReader;i...
2015-12-03 10:03:00 49
原创 从头认识java-11.4 正则表达式(3)-Pattern和Matcher
这一章节我们来讨论一下Pattern和Matcher。之前我们都是简单的使用正则表达式来匹配字符串,其实java里面提供了强大的正则匹配类,我们下面将以几个例子来说明。package com.ray.ch11;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test { public
2015-12-02 15:28:45 2241
从头认识java-11.4 正则表达式(3)-Pattern和Matcher
这一章节我们来讨论一下Pattern和Matcher。之前我们都是简单的使用正则表达式来匹配字符串,其实java里面提供了强大的正则匹配类,我们下面将以几个例子来说明。package com.ray.ch11;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test { pub...
2015-12-02 15:28:00 130
原创 从头认识java-11.4 正则表达式(2)-基本语法
这一章节我们会简要的介绍一下正则表达式的基本语法。我们的目的不是写出最复杂的表达式,是写出能够完成任务的表达式。1.字符字符意义\t制表符\n换行\r回车\f换页\e转义\xhh十六进制\uhhhhunicode十六进制2.字符类字符类意义.任意字符[abc]包含abc的任意字符[^abc]不包含abc的任意字符[a-zA-z]a-z的大小写任意字符[abc[ijk]]跟a|b|c|i|j|k的意
2015-12-02 11:58:47 1924
从头认识java-11.4 正则表达式(2)-基本语法
这一章节我们会简要的介绍一下正则表达式的基本语法。我们的目的不是写出最复杂的表达式,是写出能够完成任务的表达式。1.字符字符意义\t制表符\n换行\r回车\f换页\e转义\xhh十六进制\uhhhhunicode十六进制2.字符类字符类意义.任意字符[abc]包含abc的任意字符[^abc]...
2015-12-02 11:58:00 69
原创 从头认识java-11.4 正则表达式(1)-感性认知
这一章节我们来感受一下正则表达式。正则表达式就是以某种形式来描述字符串。注意:在java里面正则表达式的反斜杠需要"\\"来描述,如果是普通的反斜杠,需要“\\\\”来描述。在字符串中,可以使用正则的方法有几个,分别是matches、split还有replaceAll1.matches方法下面只是举一些例子,让大家感觉一下正在表达式。package com.ray.ch11;public cl
2015-12-02 10:06:56 2036 2
从头认识java-11.4 正则表达式(1)-感性认知
这一章节我们来感受一下正则表达式。正则表达式就是以某种形式来描述字符串。注意:在java里面正则表达式的反斜杠需要"\\"来描述,如果是普通的反斜杠,需要“\\\\”来描述。在字符串中,可以使用正则的方法有几个,分别是matches、split还有replaceAll1.matches方法下面只是举一些例子,让大家感觉一下正在表达式。package com.ray.ch11;pu...
2015-12-02 10:06:00 81
原创 从头认识java-11.3 格式化输出(2)
接着上一章节的内容,这一章节主要讲述格式化说明符以及Formatter的类型转换。1.格式化说明符%[argument_index$][flags][width][.precision]conversion 可选的 argument_index 是一个十进制整数,用于表明参数在参数列表中的位置。第一个参数由 "1$" 引用,第二个参数由 "2$" 引用,依此类推。 可选的 flags 是修改输出格
2015-12-01 16:38:34 1934
从头认识java-11.3 格式化输出(2)
接着上一章节的内容,这一章节主要讲述格式化说明符以及Formatter的类型转换。1.格式化说明符%[argument_index$][flags][width][.precision]conversion 可选的 argument_index 是一个十进制整数,用于表明参数在参数列表中的位置。第一个参数由 "1$" 引用,第二个参数由 "2$" 引用,依此类推。可选的 flags 是修改输...
2015-12-01 16:38:00 77
原创 从头认识java-11.3 格式化输出(1)
这一章节我们来讨论一下格式化输出,这个话题我们将通过几个章节来展开描述。在c语言体系里面,用的最多的估计就是printf这个函数:printf("%d%f",a,b)上面简单的一句,使用了格式化输出,%d表示输出整形数字,%f浮点数。1.System.out.printf和System.out.formatjava继承c语言体系,当然也会有printf之类的函数,我们下面举例:package co
2015-12-01 15:48:08 2025
从头认识java-11.3 格式化输出(1)
这一章节我们来讨论一下格式化输出,这个话题我们将通过两个章节来展开描述。在c语言体系里面,用的最多的估计就是printf这个函数:printf("%d%f",a,b)上面简单的一句,使用了格式化输出,%d表示输出整形数字,%f浮点数。1.System.out.printf和System.out.formatjava继承c语言体系,当然也会有printf之类的函数,我们下面举例:pa...
2015-12-01 15:48:00 68
原创 从头认识java-11.2 "+"与StringBuilder
这一章节我们来讨论一下字符串里面的"+"与StringBuilder。1.例子package com.ray.ch11;public class Test { public static void main(String[] args) { String a = "a" + "b" + "c"; String d = a + "d"; }}我们在这里使用java的一个分析程序的
2015-11-30 22:48:53 2041 2
Mastering Python Design Patterns 精通python设计模式
2015-09-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人