几个月前,我问这个问题是另一个问题。
在我的第一个问题中,我创建了一个作为tcpip-classobject的类属性,最后效果很好。
在实现了许多方法之后,我决定通过实现tcpip
类中的BytesAvailableFunction
来改进代码。从此开始,我认为继承tcpip
类而不是创建属性对象是一个不错的决定。
所以这是目前的代码:
classdef wsg50 < tcpip methods %Constructor with SuperClassConstructor function obj = wsg50(varargin) defaultHost = 'localhost' % The decoding of varargin follows obj = obj@tcpip(host,port) obj.conf_conn(); end %Configure Connection method function conf_conn(obj) obj.OutputBufferSize = 3000; end end
如果我在构造函数中调用方法conf_conn
,我将得到ErrorMsg:
"Unrecognized property 'OutputBufferSize' for class 'wsg50'."
如果我在构造函数方法之外调用该方法。构造函数被再次调用,我得到了ErrorMsg:
"The name 'conf_conn' is not an accessible property for an instance of class 'TCPIP objects'."
但是,如果我直接调用超类的Property:
gripper.OutputBuffersize = 3000
它工作正常,我可以更改我的属性。
是否可以使用子类方法从超类tcpip更改属性?
更多&回答...