承接上文

抽象对象和子对象


.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. 利用Multipeer Connectivity框架进行WiFi传输-b

    什么是Multipeer Connectivity? 在iOS7中,引入了一个全新的框架——Multipeer Connectivity(多点连接).利用Multipeer Connectivity框 ...

  2. 领域驱动设计和实践(转:http://kb.cnblogs.com/page/112298/)

    引言 软件系统面向对象的设计思想可谓历史悠久,20世纪70年代的Smalltalk可以说是面向对象语言的经典,直到今天我们依然将这门语言视为面向对象语言的基础.随着编程语言和技术的发展,各种语言特性层 ...

  3. hdu 3487

    splay #include<cstdio> #include<cstring> #include<iostream> #include<algorithm& ...

  4. Codeforces Round #230 (Div. 2) C Blocked Points

    题目链接 题意 : 给你一个半径为n的圆,圆里边还有圆上都有很多整点,让你找出与圆外的任意一个整点距离等于1的点. 思路 :这个题可以用枚举,画个图就发现了,比如说先数第一象限的,往下往右找,还可以找 ...

  5. Cassandra查询语言CQL的基本使用

    在window环境下运行CQL语言要先安装python环境,在linux下不需要,cassandra内置了python. 1.查看python版本:python --version2.运行pythod ...

  6. 保护模式下GDTR,LDTR,全局描述符表,局部描述符表和选择器的关系

    这张图要注意:右边两个0-15,其中上面的是LDTR,  下面的是选择子. 图下第五个标线,是两个线交叉的,实际上第五个线是指向右边水平的那个线. 没有箭头的两组线分别表示GDT的区间,LDT的区间 ...

  7. Qt中如何写一个model(自定义一个RowNode,我没有碰到过)

    在qt中,用到最多就是model/view的结构来表示数据层及表示层的关系.model用于给view提供数据.那如何来实现一个简单的树形model呢. 实现一个自己的model需要重载以下的方法: Q ...

  8. Android:MD5加密

    /** * @author gongchaobin * * MD5加密 * * @version 2013-8-22 */ public class MD5Util { // 用来将字节转换成 16 ...

  9. Android开发之PackageManager类

    PackageManger,可以获取到手机上所有的App,并可以获取到每个App中清单文件的所有内容. 设置应用程序版本号在应用程序的manifest文件中定义应用程序版本信息.2个必须同时定义的属性 ...

  10. URAL1017. Staircases

    链接 简单递推 #include <iostream> #include<cstdio> #include<cstring> #include<algorit ...