public void foo()
{
...... m = new ColorProperty.Maker(PR_BACKGROUND_COLOR) {
protected Property convertPropertyDatatype(
Property p, PropertyList propertyList, FObj fo) throws
PropertyException {
String nameval = p.getNCname();
if (nameval != null) {
FObj fobj = (fo == null ? propertyList.getFObj() : fo);
FOUserAgent ua = (fobj == null ? null : fobj.getUserAgent())
;
return ColorProperty.getInstance(ua, nameval);
}
return super.convertPropertyDatatype(p, propertyList, fo);
}
}; ......
}在一个函数体里重新定义了个方法?还是只是重新定义那个Maker的成员
convertPropertyDatatype()
Maker的类定义中有一个convertPropertyDatatype()方法
Maker是ColorProperty类的一个嵌套定义的类
{
...... m = new ColorProperty.Maker(PR_BACKGROUND_COLOR) {
protected Property convertPropertyDatatype(
Property p, PropertyList propertyList, FObj fo) throws
PropertyException {
String nameval = p.getNCname();
if (nameval != null) {
FObj fobj = (fo == null ? propertyList.getFObj() : fo);
FOUserAgent ua = (fobj == null ? null : fobj.getUserAgent())
;
return ColorProperty.getInstance(ua, nameval);
}
return super.convertPropertyDatatype(p, propertyList, fo);
}
}; ......
}在一个函数体里重新定义了个方法?还是只是重新定义那个Maker的成员
convertPropertyDatatype()
Maker的类定义中有一个convertPropertyDatatype()方法
Maker是ColorProperty类的一个嵌套定义的类
C++的话,继承一下ColorProperty.Maker这个类,改写下convertPropertyDatatype()函数
做一个继承类的指针