自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (2)
  • 收藏
  • 关注

转载 C++中的临时对象

书归正传,我们知道在C++的创建对象是一个费时,费空间的一个操作。有些固然是必不可少,但还有一些对象却在我们不知道的情况下被创建了。通常以下三种情况会产生临时对象:  1,以值的方式给函数传参;  2,类型转换;  3,函数需要返回一个对象时; 现在我们依次看这三种情况:   一,以值的方式给函数传参。   我们知道给函数传参

2012-07-27 14:03:48 795

原创 第十章 类型检查

运行时类型识别(run-time type identification RTTI):当只有一个指向对象基类的饮用时,RTTI机制可以让你找出这个对象的确切类型。10.1 为什么需要RTTIRTTI不是多态Java希望我们始终使用多态机制,只在必须的时候使用RTTI在Java中,RTTI表现在:1。Class对象,是RTTI的核心,每个类都有一个class对象。每当编写并且

2012-07-27 10:42:17 957

转载 python mutable 和 immutable

对于一个大三的人来说,学习一门新的语言,其基本语法几分钟就搞定了,可是要深入其机制,可不是一二天的事。如果你认为你了解python,那么你得首先回答如下问题?1. 是否了解动态语言的鸭子模型?2. 是否了解可变参数与关键字参数?3. 对函数式编程有初步了解。4. 是否知道列表生成式?5. 是否知道lambda/decorator/slots?6. 为什么要把缺省

2012-07-25 17:35:12 9669 1

转载 python __slots__

python新模式的class,即从object继承下来的类有一个变量是__slots__,slots的作用是阻止在实例化类时为实例分配dict,默认情况下每个类都会有一个dict,通过__dict__访问,这个dict维护了这个实例的所有属性,举例如下class base(object):    v = 1    def __init__(self):          pass

2012-07-25 17:19:03 1381

转载 可爱的 Python: Decorator 简化元编程

少劳多得Decorator 与 Python 之前引入的元编程抽象有着某些共同之处:即使没有这些技术,您也一样可以实现它们所提供的功能。正如 Michele Simionato 和我在 可爱的 Python 专栏的早期文章 中指出的那样,即使在 Python 1.5 中,也可以实现 Python 类的创建,而不需要使用 “元类” 挂钩。Decorator 根本上的平庸与之非常类

2012-07-25 17:06:38 2994

转载 编程基础之什么是元编程

大家知道元编程么?元编程到底什么呢?下面为你介绍元编程。元编程是用来产生代码的程序,操纵代码的程序,在运行时创建和修改代码而非编程时,这种程序叫做元程序。而编写这种程序就叫做元编程。比如编译原理中用来生成词法分析器和语法分析器的lex和yacc。元编程技术在多种编程语言中都可以使用,但更多的还是被应用于动态语言中,因为动态语言提供了更多的在运行时将代码视为数据进行操纵的能力。虽然像

2012-07-25 17:03:40 2458

转载 python 中的列表解析和生成表达式

优雅、清晰和务实都是python的核心价值观,如果想通过操作和处理一个序列(或其他的可迭代对象)来创建一个新的列表时可以使用列表解析(  List comprehensions)和生成表达式,通过这两个操作,我们可以看到这三个观点是如何在python中和谐统一起来的。列表解析在需要改变列表而不是需要新建某列表时,可以使用列表解析。列表解析表达式为:[expr for

2012-07-25 16:55:57 745

转载 鸭子类型(wiki)

在程序设计中,鸭子类型(英语:duck typing)是动态类型的一种风格。在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由当前方法和属性的集合决定。这个概念的名字来源于由James Whitcomb Riley提出的鸭子测试(见下面的“历史”章节),“鸭子测试”可以这样表述:“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就

2012-07-25 16:52:06 1164

原创 第九章 通过异常处理错误

9.1 基本异常9.2 捕获异常9.3创建自定义的异常9.4 异常说明编译时被强制检查的异常称为“被检查的异常”。9.5 捕获所有的异常9.6 Java标准异常Throwable这个Java类被用来表示任何可以作为异常被抛出的类。Throwable对象可分为两种类型(指从Throwable继承而得到的类型):Error用来标识编译时和系统错误(出特殊情况外,一般不用你关

2012-07-25 16:15:21 698

原创 第八章 接口与内部类

8.1 接口如果知道某事物应该成为一个基类,那么第一选择应该是使它成为一个接口,只有在强制你必须要具有方法定义和成员变量的时候 ,采用该改而选择抽象类,或者在必要时使其成为一个具体类。extends可以引用多个接口,但只可以将extends用于单一类。接口中的任何字段都自动是static和final的。嵌套接口。8.2 内部类内部类和组合是完全不同的概念。当将内

2012-07-25 13:15:25 880

转载 javasript闭包详解

一、什么是闭包?“官方”的解释是:所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。相信很少有人能直接看懂这句话,因为他描述的太学术。我想用如何在Javascript中创建一个闭包来告诉你什么是闭包,因为跳过闭包的创建过程直接理解闭包的定义是非常困难的。看下面这段代码:function a()

2012-07-25 11:04:50 1250

转载 Python模块和包

多个关系密切的模块应该组织成一个包,以便于维护和使用。这项技术能有效避免名字空间冲突。创建一个名字为包名字的文件夹并在该文件夹下创建一个__init__.py 文件就定义了一个包。你可以根据需要在该文件夹下存放资源文件、已编译扩展及子包。举例来说,一个包可能有以下结构:Graphics/     __init__.py    Primitive/         __init_

2012-07-24 11:47:48 756

转载 py文件编译为pyc

什么是pyc文件pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的虚拟机的概念。pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的python是无法

2012-07-24 11:04:19 853

转载 import与from...import....

简单说说python import与from...import....(python模块)在python用import或者from...import来导入相应的模块。模块其实就一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中,我们就可以使用了。这类似于C语言中的include头文件,Python中我们用import导入我们需要的模

2012-07-24 11:03:36 853

原创 第七章 多态

7.1 再论向上转型7.2 转机Java中除了static方法和final方法(private方法属于final方法)之外,其他所有方法都是后期绑定。class A{public static void f(){System.out.println("A");}}class B extends A{//@Override   //添加Override注解会报错,说明

2012-07-23 14:39:18 626

原创 第六章 复用类

6.1 组合语法6.2 继承语法如果基类有不带参数的构造函数,且子类构造函数中没有显式调用父类的带参数的构造函数,则子类的构造函数中会自动调用父类不带参数的构造函数如果基类没有不带参数的构造函数,则子类的构造函数中需使用super显示的调用父类的构造函数6.3 结合使用组合和继承6.4 在组合与继承之间选择组合技术通常用于想在新类中使用现有类的功能而非它的接口这种情形。即,

2012-07-20 15:00:09 718

原创 第五章 隐藏具体实现

5.1 包:程序库单元5.2 Java访问权限修饰词包访问权限:public:接口访问权限private:你无法访问protected:继承访问权限  基类的创建这会希望有某个特定成员,把对它的访问权限赋予派生类(可能与基类不在一个包中)而不是所有类。这就需要protected来完成。protected也提供包访问权限。5.3 接口和实现5.4 类访问权限请

2012-07-19 10:44:42 747

原创 第四章 初始化与清理

4.1 用构造器确保初始化4.2 方法重载在static内部不能调用非静态方法(除非把对某个对象的引用传递到static方法里,然后通过这个引用来调用非静态方法)4.3 清理:终结处理和垃圾回收Java有垃圾回收器负责回收无用对象占据的内存资源。但也有特殊情况,假定你的对象(并非使用new)获得了一块“特殊”的内存区域,由于垃圾回收器只知道释放那些经由new分配的内存,所以它不知道

2012-07-19 09:22:19 840

原创 第三章 控制程序流程

3.1 使用Java操作符如果对基本数据类型执行算术运算或按位运算,大家会发现,只要类型比int小(即char、byte或者short),那么在元算之前,这些值会自动转换成int。这样以来,最终生成的结果就是int类型。如果想把结果赋值给较小的类型,就必须使用类型转换。3.2 执行流程控制带标签的break,continue        Math.random()输出值范

2012-07-18 14:55:21 955

原创 第二章 一切都是对象

2.1 用引用操作对象2.2 必须由你创建所有对象2.3 永远不需要销毁对象2.4 创建新的数据类型:类2.5 方法、参数和返回值2.6 构建一个Java程序尽管当static作用于某个数据成员时,肯定会改变数据创建的方式(静态存储),但是如果static作用于某个方法,差别却没那么大。2.7 你的第一个Java程序2.8 注释和嵌入式文档2.9 编码风

2012-07-18 14:01:13 708

原创 第一章 对象导论

1.1 抽象过程程序可以通过添加新类型的对象使其自身适用于某个特定问题。OOP允许根据问题来描述问题,而不是根据运行解决方案的计算机来描述问题,但是它仍然与计算机有联系:每个对象看起来都有点像一个微型计算机——它具有状态,还有操作,用户可以要求对象执行这些操作。1.2 每个对象都有一个接口接口定义了对某一个特定对象所能发出的请求。但是,在程序中必须有满足这些请求的代码。这些

2012-07-18 13:24:06 977

php5.2.17 线程安全版windows

php5.2.17 线程安全版windows

2016-01-30

JVM PrintGCDetails 信息讲解

讲解java GC回收机制 讲解 JVM PrintGCDetails 信息各行各列的解释

2013-06-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除