承接上文

抽象对象和子对象


.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. C#.net winform 控件和皮肤大全

    1. 东日IrisSkin IrisSkin 共有两个版本,一个是IrisSkin.dll 用于.Net Framework1.0/1.1 和IrisSkin2.dll 用于.Net Framewor ...

  2. Js通过原型继承创建子类

    //定义一个有两个方法的类 function Person(){} Person.prototype.married = function(){}; Person.prototype.unmerrie ...

  3. shell 练习

    shell 练习 iii= ] do iii=$[$iii+] echo -n "$iii " done iii= ] do iii=$[$iii+] echo -n " ...

  4. 如何使用 Java8 实现观察者模式?(上)

    [编者按]本文作者是 BAE 系统公司的软件工程师 Justin Albano.在本篇文章中,作者通过在 Java8 环境下实现观察者模式的实例,进一步介绍了什么是观察者模式.专业化及其命名规则,供大 ...

  5. 149. Max Points on a Line

    题目: Given n points on a 2D plane, find the maximum number of points that lie on the same straight li ...

  6. a++与=++a的区别

    //a++;//a=a+1;              // ++a;//a=a+1;               //Console.WriteLine(a++);// Console.WriteL ...

  7. 生成Excel錯誤 遠端程序呼叫失敗。 (發生例外狀況於 HRESULT: 0x800706BE)

    错误信息:详细信息:检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005.网上找到 ...

  8. UVA_11468_Substring_(AC自动机+概率动态规划)

    描述 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&a ...

  9. NOI2010超级钢琴

    超级钢琴 [问题描述] 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以弹奏出n个音符,编号为1至n.第i个音符的美妙度 ...

  10. jquery图片播放插件Fancybox(灯箱)

    效果预览Demo源码下载 Fancybox的特点如下: 可以支持图片.html文本.flash动画.iframe以及ajax的支持 可以自定义播放器的CSS样式 可以以组的形式进行播放 如果将鼠标滚动 ...