13.07.2015 Views

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

}在 随 后 的 每 个 例 子 里 , 我 们 都 创 建 一 个 简 单 的 Person 类 , 它 有 name,race, 和 aliases域 , 每 种 类 都 有 一 个 相 同 的 接 口 , 但 是 有 完 全 不 同 的 实 现 。 我 们 不 准 备 告 诉 你 我 们 最 喜 欢 哪种 实 现 , 因 为 根 据 实 际 使 用 的 环 境 , 我 们 几 乎 都 喜 欢 。 有 些 人 喜 欢 弯 曲 的 实 现 , 有 些 人 喜 欢直 接 的 实 现 。12.7.1 用 use fields 定 义 的 域对 象 不 一 定 要 用 匿 名 散 列 来 实 现 。 任 何 引 用 都 可 以 。 比 如 , 如 果 你 使 用 一 个 匿 名 数 组 , 你 可以 这 样 设 置 一 个 构 造 器 :sub new {my $invocant = shift;my $class = ref($invocant) || $invocant;return bless [], $class;}以 及 象 下 面 这 样 的 指 示 器 :sub name {my $self = shift;if (@_) { $self->[0] = shift }return $self->[0];}sub race {my $self = shift;if (@_) { $self->[1] = shift }return $self->[1];}313

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!