定義類
通常,Perl 中的類只是包。它們可以包含資料和方法,就像通常的包一樣。
package Point;
use strict;
my $CANVAS_SIZE = [1000, 1000];
sub new {
...
}
sub polar_coordinates {
...
}
1;
值得注意的是,包中宣告的變數是類變數,而不是物件(例項)變數。更改包級變數會影響類的所有物件。如何儲存特定於物件的資料,請參閱建立物件。
使類包特定的是箭頭運算子 ->
。它可以在一個簡單的詞之後使用:
Point->new(...);
或者在標量變數之後(通常持有參考):
my @polar = $point->polar_coordinates;
箭頭左側的內容前置於方法的給定引數列表中。例如,呼叫結束後
Point->new(1, 2);
new
中的陣列 @_
將包含三個引數:('Point', 1, 2)
。
表示類的包應該考慮這個約定,並期望它們的所有方法都有一個額外的引數。