perl 传递对象到模块
perl 中的对象 就是引用 通过new方法传递数据结构给各个模块 [root@wx03 test]# cat x1.pm
package x1;
use Data::Dumper;
sub new {
my $self ={};
my $invocant = shift;
my $class = ref($invocant) || $invocant;
my ($name,$age,$starting_position,$monthly_salary)=@_;
my $self = {
"name" =>$name,
"age" =>$age
};
print "\$class is $class\n";
print "--------------------\n";
print $self->{name};
print "\n";
print "--------------------\n"; bless($self, $class); # 给予对象性质
print "\$self is $self\n";
$str=Dumper($self);
print "\$str is $str\n"; return $self;
}; sub sum_var {
my ($self,
$var1, # Name or IP number of host to ping
$var2, # Seconds after which ping times out
) = @_;
my $var3= $var1 + $var2;
return $var3;
}
1; [root@wx03 test]# cat a2.pl
unshift(@INC,"/root/test");
require x1;
$ed=x1->new('lily','29');
print "\n"; [root@wx03 test]# perl a2.pl
$class is x1
--------------------
lily
--------------------
$self is x1=HASH(0xd49310) ###perl里对象就是hash
$str is $VAR1 = bless( {
'name' => 'lily',
'age' => '29'
}, 'x1' ); -----------------------------------------------------
[root@wx03 test]# cat x1.pm
package x1;
use Data::Dumper;
sub new {
my $self ={};
my $invocant = shift;
my $class = ref($invocant) || $invocant;
my ($name,$age,$starting_position,$monthly_salary)=@_;
my $self = {
"name" =>$name,
"age" =>$age
}; bless($self, $class); # 给予对象性质 return $self;
}; sub sum_var {
my ($self,
$var1, # Name or IP number of host to ping
$var2, # Seconds after which ping times out
) = @_;
my $var3= $var1 + $var2;
return $var3;
}
1; [root@wx03 test]# cat x2.pm
package x2;
use Data::Dumper; sub sum_a {
my ($self, ##传入对象
$var1, # Name or IP number of host to ping
$var2, # Seconds after which ping times out
) = @_;
print "x2 module\n";
print $self->{name};
print "\n";
my $var3= $var1 + $var2 +99;
return $var3;
}
1;
[root@wx03 test]# cat a1.pl
unshift(@INC,"/root/test");
require x1;
require x2;
$ed=x1->new('lily','29');
print "----------------------\n";
print x2::sum_a($ed,90,66); ##传入对象到x2模块
print "\n"; [root@wx03 test]# perl a1.pl
----------------------
x2 module
lily
255
perl 传递对象到模块的更多相关文章
- Message和handler传递对象
		Bundle可以传递对象,message又可以传递Bundle于是就可以利用buddle作为中间载体传递对象了 Message msg = Message.obtain(); Bundle b = ... 
- Android 全局获取 Context 与使用 Intent 传递对象
		=====================全局获取 Context======================== Android 开发中很多地方需要用到 Context,比如弹出 Toast.启动活 ... 
- Android--Intent传递对象
		Intent 传递对象通常有两种实现方式,Serializable 和 Parcelable: 一.Serializable:序列化,表示将一个对象转换成可存储或可传输的状态,序列化后的对象可以在网络 ... 
- 实现在GET请求下调用WCF服务时传递对象(复合类型)参数
		WCF实现RESETFUL架构很容易,说白了,就是使WCF能够响应HTTP请求并返回所需的资源,如果有人不知道如何实现WCF支持HTTP请求的,可参见我之前的文章<实现jquery.ajax及原 ... 
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
		http://blog.csdn.net/cjjky/article/details/6441104 在Android中的不同Activity之间传递对象,我们可以考虑采用Bundle.putSeri ... 
- Intent传递对象的两种方法(Serializable,Parcelable)   (转)
		今天讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcela ... 
- Intent传递对象的两种方法
		Android为intent提供了两种传递对象参数类型的方法 分别需要使实体类实现Serializable接口.Parcelable接口 首先我们要知道,传递对象,需要先将对象序列化 一.那么为什么要 ... 
- Android中Intent传递对象的两种方法(Serializable,Parcelable)
		今天要给大家讲一下Android中 Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是 Bundle.putP ... 
- 利用Bundle在activity之间传递对象
		(2010-12-04 09:45:54) 转载▼ 标签: it 分类: android开发 转自:http://chen592969029.javaeye.com/blog/772656 假如需要在 ... 
随机推荐
- BarChart控件的使用
			The HTML Markup <asp:BarChart ID=" ChartType="Column" ChartTitle="United Stat ... 
- 在Tableau中自定义版块地图 (Polygon)
			在Tableau的地图报表中有一个‘Filed Map’的类型,可以根据版块来显示数据. 但实际应用中Tableau固有的版块划分可能不是我们想要的,下面介绍如何自定义版块并且用作数据分析. 自定义版 ... 
- WebForm发布提示:无法加载或找不到oracle.dataaccess文件
			出错提示: 在32位错做系统的开发机上引用了第三方插件(oracle的dataaccess)完成的项目,将发布的程序拷贝到64位的服务器上进行发布时提示无法加载或找不到dataaccess文件. 错误 ... 
- Jsp中使用EL表达式对字符串进行操作
			用fn函数:<%@ taglib prefix="fn" uri="http://Java.sun.com/jsp/jstl/functions" %&g ... 
- C#常用控件缩写
- Android各种效果集合
			QQ侧滑风格:http://www.cnblogs.com/lichenwei/p/4111252.html,通过继承HorizontalScrollView类来实现的. 
- 简单的webservice
			Hi,大家好! 今天主要和大家分享,如何搭建一个Web服务,做Android开发,不可避免会涉及到客户端开发,我们怎么样来实现一个服务端,怎么样来实现一个客户端,并相互传递数据.就算调用别人的服务时, ... 
- linux安装LNMP的资源
			wget http://nginx.org/download/nginx-0.7.69.tar.gz wget http://museum.php.net/php5/php-5.2.10.tar.gz ... 
- 0课程介绍(Week1,3月3日)
			一.自我介绍 1.姓名:杨晔 2.办公室:B211-2 3.电子邮件:yangye@zjjy.com.cn 4.QQ:6706892 5.博客:http://www.cnblogs.com/meety ... 
- struts ModelDriven
			在表单提交的时候传值是这样,name=admin.username name=admin.password,然后在action中定义属性admin生成get和set 也可以实现ModelDriven这 ... 
