自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

三十而立

每日一小步

  • 博客(26)
  • 收藏
  • 关注

原创 名词满天飞时,看看它

 “When I use a word,” Humpty Dumpty said, in rather a scornful tone, “it means just what I choose it to mean—neither more nor less.”“The question is,” said Alice, “whether you can make words mean so m

2007-12-04 22:22:00 632

原创 说说java的数组

在the Java Language Specification 3rd里提到: IN the Java programming language arrays are objects, are dynamically created, and may be assigned to variables of type Object . All methods ofclass Object ma

2007-11-26 20:27:00 678

原创 The Java Language Specification 3rd写错了?

在第559页的表达式里提到java语言没有逗号操作符。摘取内容如下:15.27 ExpressionAn Expression is any assignment expression:Expression:AssignmentExpressionUnlike C and C++, the Java programming language has no comma operator. 什

2007-11-23 14:00:00 728

原创 C programming deep secrets里有趣的小故事.

真不知作者是从哪里找到这些合适又搞笑的故事的.charpter 3.Unscrambling Declarations in C."The name of the song is called Haddocks Eyes.""Oh, thats the name of the song, is it?" Alice said trying to feel interested."N

2007-11-09 15:55:00 859

原创 C语言数组下标为何从0开始

        Many other features, besides the type system, were put in C for the C compiler-writers benefit (andwhy not, since C compiler-writers were the chief customers for the first few years). Feature

2007-11-07 14:06:00 8410

原创 也讲下正交性及入侵性

       首先,正交性是借用了几何学的术语.几何说,如果两条线相交成直角,他们就是正交的.典型的坐标轴就是正交的,因为x轴y轴是垂直相交的.正交有什么好处呢?沿着某一条线移动,你投影另一条线上的位置不变.在计算机技术中,该术语用来表示某种不相依赖性或是解耦性.如果两个或更多的事物的一个发生变化,不会影响其它事物,这些事物就是正交的.        入侵性也有不相依赖及解耦性的意思.两者的主

2007-11-06 16:59:00 831

原创 foo bar的含义

看到很多的书上都爱用foo或bar来做变量名或函数名,包括jsr里用来做类型名(引用一句:In general, if Foo is a subtype (subclass or subinterface) of Bar),上网查下,比较赞同下面的说法:A metasyntactic variable is a placeholder name, or a kind of alias term

2007-10-24 15:36:00 1184

原创 初始化和赋值的区别

折腾我挺长一段时间,基本挺明白了,先来个区别说明:赋值操作是在两个已经存在的对象间进行的,而初始化是要创建一个新的对象,并且其初值来源于另一个已存在的对象。编译器会区别这两种情况,赋值的时候调用重载的赋值运算符,初始化的时候调用拷贝构造函数。如果类中没有拷贝构造函数,则编译器会提供一个默认的。这个默认的拷贝构造函数只是简单地复制类中的每个成员。 下面看例子。 c++中初始化和赋值操作差别是很大的。

2007-10-19 11:35:00 16261 4

转载 关于"C++引用"

引用, 在具体实现时, 会申请一个临时空间, 目的是存放被引用对象的地址. 当使用引用变量时, 其实就是对被引用对象作了一次间接寻址.此文缘起我看了这篇文章:http://blog.csdn.net/newslxw/archive/2006/08/08/1038972.aspx 还记得当年读书时, 牛牛的C++老师告诉我: "引用, 其实就是别名, 与其所引用的对象完全等价". 可是,

2007-10-18 13:32:00 918

原创 引用和指针的主要区别

指针和引用有两个主要区别引用必须总是指向一个对象,如果用一个引用给另一个引用赋值那么改变的是被引用的对象而不是引用本身 .从上面的区别可以看出,引用一定要在定义时初始化,而指针则可以不初始化,建议初始化成NULL.指针给另一个指针赋值是改变的是指针的本身,而不是指向的对象.

2007-10-15 17:31:00 735

原创 声明和定义的区别

c++ primer 3rd 5.2声明语句讲得不清不楚的,还是Effective c++ 2nd讲得清楚.所谓声明( declaration),就是用来将一个object function class 或tempate的型别名称告诉编译器.声明式并不带有细节信息.对object而言,其定义式是编译器为它配置内存的地点.extern int x; // object declarationint

2007-10-12 16:19:00 729

原创 你了解overload吗?

以下是overload的一段代码,如果能给出运行结果,并能讲出原因说明了解了.public class OverloadTest ...{    void test(Object s) ...{        System.out.println("Object version");    }    void test(OverloadTest s) ...{        System.

2007-10-11 17:33:00 1105

原创 你了解null吗?

还是引用老外的,我觉得讲得是对的,但java部分说null是null类型的一个特殊字面常量,我确实没法做确证工作,只有从事java语言开发者知道是否确实.c/c++可以从头文件上看到确如作者所说. 以下是引用内容:Null in Java(tm) In C and C++, "NULL" is a constant defined in a header file, with a valu

2007-10-11 16:39:00 590

原创 偶然看到c#的一段容器代码

using System;using System.Collections;public class Tokens: IEnumerable...{   private string[] elements;   Tokens(string source, char[] delimiters)   ...{      elements = source.Split(delimiters);   

2007-10-08 16:59:00 557

原创 考考眼力,找下代码的bug

这个bug够隐蔽的。public class BinarySearch ...{    public static int binarySearch(int[] a, int key) ...{        int low = 0;        int high = a.length - 1;        while (low  high) ...{            int m

2007-09-28 13:53:00 622

原创 类型的定义

我们经常提到类型,如果问一句,什么是类型,你会怎么回答?摘自老外的对类型的定义,写得挺好。a type is metadata about a chunk of memory that classifies the kind of data stored there. This classification usually implicitly specifies what kinds of

2007-09-28 13:41:00 765

原创 小心你的构造函数

public class IntAdder...{      private int x;      private int y;      private int z;    public void IntAdder()    ...{    x = 1;    y = 2;    z = x + y;    }        public void printResults()    ..

2007-09-27 10:44:00 938

原创 多态原理

因为多态java和c++有共通之处,先来看c++的,再来看java的。以下内容摘自李鑫深入浅出C++虚函数表。-------------------------------------------------为什么要了解虚函数表了解虚函数表对理解C++实现多态的机制会有更深的了解,对对象的内存布局会有更好的认识。 验证虚函数表的存在(C++中的struct和class实

2007-09-26 16:51:00 3560

原创 理解this指针的好例子

 看代码说话,先来个简单的。public class Wealthy...{    public String answer = "Yes!";    public void wantMoney()    ...{       String answer = "No!";       System.out.println("Do you want to give me $1,000,000

2007-09-26 16:24:00 891

转载 为goto正名

昨天和老板一块儿review我的code,当看到我的代码中存在一些goto语句的时候,老板条件反射般严肃的问我:“为什么要用goto语句”? 我很理解她为什么会惊讶。自从计算机科学一代宗师Dijkstra于1968年发表了著名的文章《Go To Statement Considered Harmful》之后,goto语句就成了过街老鼠,人人喊打。甚至有人开玩笑说:“今天你敢用goto,明天老板就让

2007-09-22 00:02:00 1327 1

原创 String若干问题

主要就是string literals1 及constant pool问题了,看以下代码。public class StringExample ...{    public static void main(String[] args) ...{        String s0 = "Programming";        String s1 = "Program"+"ming";  

2007-09-19 22:10:00 2208

原创 读the pragmatic programmer

Your Knowledge Portfolio里面提到些内容值得仔细阅读Managing a knowledge portfolio is very similar to managing a financial portfolio:1. 1. Serious investors invest regularly—as a habit.    严肃的投资者定期投资-作为一种习惯。

2007-09-17 23:25:00 603

原创 方法内匿名类的例子

在jdk的File的list方法里传入一个FilenameFilter的接口参数,使用时需要实现该接口。listpublic String[] list(FilenameFilter filter) 以下代码是给定一个目录,检查该目录下有多少个子目录,并列出目录名。class DirFilter ...{    public static void main(String[

2007-09-01 23:43:00 1043

原创 同功能不同的代码,差别呢?

以代码来说话吧,以下是实现同一功能的两段不同的代码。 第一段,两个FindChar类代码的对比:class FindChar...{    public static void main(String[] args) throws Exception...{        if(2!=args.length)...{            throw new Exception("ne

2007-09-01 01:26:00 723

原创 抽象类里没抽象方法的例子

 都知道抽象类可以没有抽象方法,这时的抽象类和普通类的最大差别就是不能实例化.一直没找到在什么环境下用到这种特殊的抽象类.最近看了jdk的I/O包后,发现里面有个很好的例子,就是FilterReader类.以下是FilterReader的代码: public abstract class FilterReader extends Reader ...{    /** *//**    

2007-08-30 22:15:00 5976 1

原创 读THE Java™ Programming Language, Fourth Edition有感

写得没有thinking in java清楚,比如对内部类章节就可以看出明显的差别. 作者毕竟是java语言之父,里面提到很多自己很了解的细节.比如: 2.1:对Cloneable接口的起名.Cloneable should have been spelled Clonable, but the misspelling was realized too la

2007-08-16 14:25:00 865

空空如也

空空如也

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

TA关注的人

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