Please Help Me About Sub and Super Classes

2 次查看(过去 30 天)
Hello, I am trying to learn classes in Matlab here is a basic question. How can I write two classes A and B in order to represent following structur?
My first class is A and second class is B. Let A has two property as p and q and B has also two property as m and n. Moreover, one of class is subclasses of other.
A.p=1;
A.q=2;
B.m=3;
B.n=4;
A.B=B; %Minor question :) which one is a subclass A or B?
%Hence
A.B.m %should be 3
A.B.n %should be 4
  3 个评论
Volkan Kandemir
Volkan Kandemir 2013-5-16
编辑:Volkan Kandemir 2013-5-16
I have read lots of articles and I have writen some classes but I can not combine classes. When I try to make one of them subclases I get the following resault.
A.p=1
A.q=2
A.m=3
A.n=4
per isakson
per isakson 2013-5-16
You have defined A as a subclass of B and the result you see is as documented, i.e. what you should expect.

请先登录,再进行评论。

采纳的回答

per isakson
per isakson 2013-5-16
编辑:per isakson 2013-5-16
It is a convention to use upper case for the first letter in a class name and lower case for instancies/objects
Try
>> a = A();
>> a.b.m
ans =
3
where
classdef A
properties
p = 1;
q = 2;
b = B;
end
end
and
classdef B
properties
m = 3;
n = 4;
end
end
.
One more example
>> A.B.m
ans =
3
where
classdef A
properties ( Constant )
p = 1;
q = 2;
B = B();
end
end
and
classdef B
properties ( Constant )
m = 3;
n = 4;
end
end
However, I don't think this is what you really ask for.
  2 个评论
Volkan Kandemir
Volkan Kandemir 2013-5-17
Thank you very much for your answer. That is what I excatly want. Also thank you for correcting me about upper and lower cases. Where can I find these rules. For example, all cracters in global variables should be writen as UPPER CASE like.
global WORKERS
per isakson
per isakson 2013-5-17
There is very little on naming conventions in the Matlab documentation.
google for "object oriented programming naming conventions"

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Construct and Work with Object Arrays 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by