承接上文

抽象对象和子对象


.net篇(环境为vs2012+Spring.Core.dll v1.31

    public class parent    {
public string Name { get; set; }
public int Age { get;set; }
}
public class chlid {
public string Name { get; set; }
public int Age { get; set; }
}
  <object id="p" type="SpringBase.parent,SpringBase">
<property name="Name" value="cnljli-p0" />
<property name="Age" value="1" />
</object>
<object id="c" parent="p" type="SpringBase.chlid,SpringBase">
<property name="Age" value="2" />
</object>
<object id="p1">
<property name="Name" value="cnljli-p1" />
<property name="Age" value="2" />
</object>
<object id="c1" parent="p1" type="SpringBase.chlid,SpringBase">
<property name="Age" value="3" />
</object>
<object id="p2" type="SpringBase.chlid,SpringBase" abstract="true">
<property name="Name" value="cnljli-p2" />
<property name="Age" value="3" />
</object>
<object id="c2" parent="p2" type="SpringBase.chlid,SpringBase">
<property name="Age" value="4" />
</object>
  1. 可以在不声明一个类的情况下直接写一个Object来做模板

java篇(环境为Maven+Jdk1.7+IntelliJ IDEA 12.1.4

package springdemo;
public class Parent {
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
class Chlid{
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
    <bean id="p" class="springdemo.Parent">
<property name="name" value="cnljli-p0" />
<property name="age" value="1" />
</bean>
<bean id="c" parent="p" class="springdemo.Chlid">
<property name="age" value="2" />
</bean>
<bean id="p1" class="springdemo.Parent" abstract="true">
<property name="name" value="cnljli-p2" />
<property name="age" value="3" />
</bean>
<bean id="c1" parent="p1" class="springdemo.Chlid">
<property name="age" value="4" />
</bean>

javaCsharp的共同点

  1. 用其他类做父类,子类不一定继承父类,但是必须要包含父类的属性
  2. 可以用自己本身做为模板,当设置参数abstract为true的时候这个对象通过id调用的
    时候返回会报错
  3. 子类会覆盖父类中某些属性的方法,不过不会覆盖属性为
    depends-on(依赖)、dependency-check(依赖检查)、autowire(自动装配模式)、
    singleton(单例)和lazy-init(延迟加载)

Ⅷ.spring的点点滴滴--抽象对象和子对象的更多相关文章

  1. Ⅶ.spring的点点滴滴--自定义对象行为

    承接上文 自定义对象行为 .net篇(环境为vs2012+Spring.Core.dll v1.31) public class lifeCycle : Spring.Objects.Factory. ...

  2. Ⅹ.spring的点点滴滴--IObjectPostProcessor(对象后处理器)

    承接上文 IObjectPostProcessor(对象后处理器) 前提是实现接口的对象注册给当前容器 C#: 通过继承AbstractObjectFactory对象的AddObjectPostPro ...

  3. Ⅸ.spring的点点滴滴--IObjectFactory与IFactoryObject的杂谈

    承接上文 ObjectFactory与IFactoryObject的杂谈 .net篇(环境为vs2012+Spring.Core.dll v1.31) public class parent { pu ...

  4. XI.spring的点点滴滴--IObjectFactoryPostProcessor(工厂后处理器)

    承接上文 IObjectFactoryPostProcessor(工厂后处理器)) 前提是实现接口的对象注册给当前容器 直接继承的对象调用这个postProcessBeanFactory方法,参数为工 ...

  5. Ⅵ.spring的点点滴滴--自定义类型转换器

    承接上文 自定义类型转换器 .net篇(环境为vs2012+Spring.Core.dll v1.31) public class CustomeConverter : TypeConverter{ ...

  6. Ⅱ.spring的点点滴滴--对象

    承接上文 对象的各种实例化 .net篇(环境为vs2012+Spring.Core.dll) 修改原来的PersonDao对象为 public class PersonDao : IPersonDao ...

  7. Ⅴ.spring的点点滴滴--引用其他对象或类型的成员

    承接上文 引用其他对象或类型的成员 .net篇(环境为vs2012+Spring.Core.dll v1.31) public class Person { public string Name { ...

  8. Ⅳspring的点点滴滴--方法和事件

    承接上文 方法和事件 .net篇(环境为vs2012+Spring.Core.dll v1.31) public abstract class MethodDemo { protected abstr ...

  9. Ⅲ.spring的点点滴滴--赋值

    承接上文 对象的赋值(调用方式都一样不再阐述) .net篇(环境为vs2012+Spring.Core.dll v1.31) public class PropertyDemo{ public Sys ...

随机推荐

  1. Android 绘制计时器

    用小米的手机,发现其实还可以,无意间点开小米的计时器,发现界面非常好看和实用.于是自己仿照着写一个,由于技术不好,代码整体结构上可能有点乱,但主要的实现功能和掌握知识点. Android中绘制采用ca ...

  2. Ubuntu安装提示Permission Denied

    我用wubi安装ubuntu 显示 permission denied 并要查看日志文件 怎么办啊? 你好,你把你的ISO放到你的Wubi目录下面,也就是把镜像放到你解压好的文件夹里面就可以了呢!! ...

  3. 2D多边形碰撞器优化器

    http://www.unity蛮牛.com/thread-19827-1-1.html http://pan.baidu.com/s/1qW2mWS8 Asset Store Link: http: ...

  4. python参考手册--第10、11章执行环境、调试

    1.解释器选项和环境 python [options] [-c cmd | filename | - ] [args] 例如:python -m pdb test.py 以脚本的形式运行库模块pdb ...

  5. php截取小时和分钟,在进行和其它时间段的比较

    用php截取时间的小时和分钟,然后判断这个时间是不是在 8:00到11:30之间,用php应该怎么写? date_default_timezone_set("Asia/Shanghai&qu ...

  6. PHP reset() 函数

    定义和用法 reset()函数把数组的内部指针指向第一个元素,并返回这个元素的值.若失败,则返回 FALSE. reset()函数用来将数组指针设置回数组的开始位置.如果需要在一个脚本中多次查看或处理 ...

  7. [TSP+floyd]POJ3311 Hie with the Pie

    题意: 给i到j花费的地图 1到n编号   一个人要从1遍历n个城市后回到1 求最小的花费(可以重复走) 分析 http://www.cnblogs.com/Empress/p/4039240.htm ...

  8. Linux伙伴系统1

    (一)--伙伴系统的概述 Linux内核内存管理的一项重要工作就是如何在频繁申请释放内存的情况下,避免碎片的产生.Linux采用伙伴系统解决外部碎片的问题,采用slab解决内部碎片的问题,在这里我们先 ...

  9. Spring 3.x企业应用开发实战(14)----事务

    Spring虽然提供了灵活方便的事务管理功能,但这些功能都是基于底层数据库本身的事务处理机制工作的.要深入了解Spring的事务管理和配置,有必要先对数据库事务的基础知识进行学习. 何为数据库事务 “ ...

  10. c#使用XSLT将xml文档转换为html文档

    需要引用下面的命名空间: using System.Xml; using System.Xml.Xsl; 方法实现: public static string ConvertXML(XmlDocume ...