matlab——之class類(詳細總結)

https://blog.csdn.net/qinze5857/article/details/80545885html

 

開篇:搜了一下網上介紹matlab的class類,信息不全,且總結不全面,因而單獨help classdef如下作個詳細總結編程

首先從類的定義提及,面對對象的編程思惟一般包括,屬性(類成員變量),方法(類成員函數)less

基本語法爲:函數

 

classdefclassname類名.net

   properties類屬性PropNamehtm

   end對象

   methods類方法  methodNameblog

   end繼承

   events類事件EventName事件

   end

   enumeration類列舉EnumName

   end

end

類名

 


屬性:

 

 

 

 


設置屬性值:

使用屬性set方法來驗證分配給屬性的值。 屬性set方法能夠執行諸如對輸入值進行錯誤檢查之類的操做,而後再採起任何須要的操做來存儲新的屬性值。

值類設置函數必須將修改後的對象返回給調用函數。 處理類不須要返回修改後的對象。

語法:

 

示例:

 

methods  
      function obj = set.Material(obj,material)  
         if ~(strcmpi(material,'aluminum') ||...  
               strcmpi(material,'stainless steel') ||...  
               strcmpi(material,'carbon steel'))  
            error('Material must be aluminum, stainless steel, or carbon steel')  
         end  
         obj.Material = material;  
      end % Material set function  
        
      function modulus = get.Modulus(obj)  
         ind = find(obj.Strain > 0); % Find nonzero strain  
         modulus = mean(obj.Stress(ind)./obj.Strain(ind));  
      end % Modulus get function  
        
      function obj = set.Modulus(obj,~)  
         fprintf('%s%d\n','Modulus is: ',obj.Modulus)  
         error('You cannot set Modulus explicitly');  
      end 
end
 

方法method:
 

使用語法:

 

參數設定:

 

 

 

文件夾:
 

類文件保存:注意@名詞空間(與類名相同,例子中都爲classNameA)
注意@名詞空間(與類名相同,例子中都爲classNameA)


添加部分:

當我使用時,我發現如何調用這裏面的class以及其餘.m函數呢

一、函數調用

 

二、類調用

 

 

參考:類文件夾,分開定義一個類;http://www.cnblogs.com/jmpep/archive/2012/06/29/4486346.html

參考:類的繼承以及類的使用;https://blog.csdn.net/beechina/article/details/50933860

相關文章
相關標籤/搜索