2015/1/4 夜一个犯的错误:方法是发送给对象的,而不是发送给类的。对象和接收到消息后,在当前类中找,找不到去上一级父类找,再上一级……创建新的类时,对象会从它的超类NSObject中继承实例变量isa“每个方法调用都获得了一个名为self的隐藏参数,它是一个指向接收消息的对象的指针。”“sel...
分类:
其他好文 时间:
2015-01-05 01:44:20
阅读次数:
136
继承的特点:1.提高了代码的复用性。2、让类与类之间发生了关系,有了这个关系,才有了多态的特性。(注意:千万不要为了获取其他类的功能,简化代码而继承;必须是类与类之间有所属关系才可以继承,所属关系 is a。)子父类出现后,类成员的特点:1、变量;2、函数;3、构造函数。举例:变量(此函数打印出来的...
分类:
编程语言 时间:
2015-01-04 22:59:25
阅读次数:
201
模式动机模板方法模式是基于继承的代码复用基本技术,模板方法模式的结构和用法也是面向对象设计的核心之一。在模板方法模式中,可以将相同的代码放在父类中,而将不同的方法实现放在不同的子类中。在模板方法模式中,我们需要准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来让子...
分类:
其他好文 时间:
2015-01-04 13:17:02
阅读次数:
136
对象的继承关系是在编译时就定义好了,所以无法在运行时改变从父类继承的实现。 子类的实现与它的父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。 当你需要复用子类时,如果继承下来的实现不适合解决新的问题,则父类必须重写或被其他更适合的类替换。这种依赖关系限制了灵活性并...
分类:
其他好文 时间:
2015-01-04 11:15:48
阅读次数:
172
只有基础内置元素=才会深拷贝(String不是)
你定义的类如果需要深拷贝,要rewrite Cloneable的Clone方法
若是继承关系,父类也要重写。
http://www.cnblogs.com/yxnchinahlj/archive/2010/09/20/1831615.html
①为什么我们在派生类中覆盖Object的clone()方法时,一定要调用super.clone()...
分类:
编程语言 时间:
2015-01-04 09:58:34
阅读次数:
193
.NET中的异常(Exception).net中的中异常的父类是Exception,大多数异常一般继承自Exception。可以通过编写一个继承自Exception的类的方式,自定义异常类!异常处理机制Try{ 可能发生异常的代码 后续代码 }Try以外的代码 catch(Exception e) ...
分类:
Web程序 时间:
2015-01-04 06:22:57
阅读次数:
200
1.重写override:也叫做覆盖。子类重新定义父类中有相同名称和参数列表的虚函数。函数特征相同。重写需要注意:1) 被重写的函数不能是static的。必须是virtual的2) 重写函数必须有相同的类型,名称和参数列表3) 重写函数的访问修饰符可以不同。尽管virtual是private的,派生...
分类:
其他好文 时间:
2015-01-03 13:08:54
阅读次数:
117
重载应该叫overload,重写叫override;重载某个方法是在同一个类中发生的!重写是在子类中重写父类中的方法。1.override: 父类:public virtual string ToString(){return "a";} 子类:public override string ToSt...
简单工厂模式一、简介 简单工厂模式又叫静态工厂方法(StaticFactoryMethod)模式。 其实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。 简单的说,就是一个专门的类来负责所有的实例的创建。二、角色及其职责 工厂(C...
分类:
其他好文 时间:
2015-01-02 22:19:34
阅读次数:
219
Scala提供了对xml的内建支持,可以用scala.xml.Elem的值表示一个XML元素。Node类是所有xml节点类型的父类,Elem类描述xml元素。要处理某个元素的属性键和值,可以用attributes属性,然后用()来访问定键的值 ,使用循环或asAttrMap方法遍历所有属性。内嵌的字符串会被转成Atom[String]节点,所以可在xml中包含scala代码,被内嵌的scala代码...
分类:
其他好文 时间:
2015-01-02 18:48:03
阅读次数:
180