A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© せR3n、何必装纯 黑马帝   /  2011-11-24 17:02  /  1839 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

private Son(){}
private static Son son=new Son();
public static Son getInstance(){
   return son;
}
红色部分(static)有什么作用啊?

8 个回复

倒序浏览
清秋 黑马帝 2011-11-24 17:16:58
沙发
本帖最后由 清秋 于 2011-11-24 17:20 编辑
  1. public static Son getInstance(){
  2.    return son;
  3. }
复制代码
该方法是static。要调用对象son,必须保证son也是静态的。静态成员函数调用的必须是静态成员变量
回复 使用道具 举报
本帖最后由 常文艺 于 2011-11-24 17:32 编辑

////////////静态变量被调用 必须用静态方法吧  
回复 使用道具 举报
单例是这样描述的:客户不能自己通过构造器实例化对象,只能通过类中静态方法返回此对象的静态实例。所以成员变量必须是静态的
回复 使用道具 举报
是为了给下面的static成员函数调用,如果不把他定义成static的是不能这样返回的。
回复 使用道具 举报
Static(静态)方法只能访问 Static修饰的变量,这里的Static是为了让其可以被下边的方法访问。
回复 使用道具 举报
李晓斌 黑马帝 2011-11-24 21:41:34
7#
Static(静态) 关键字,用于修饰成员(成员变量,成员函数)。静态函数只能访问静态成员(方法和变量),因此对象son如果不是Static静态的话,就不能被该方法调用。而非静态方法既可以访问静态也可以访问非静态。
回复 使用道具 举报
刘元霄 黑马帝 2011-11-25 04:14:15
8#
静态只能被静态调用, 二私有静态只能被同一个类中调用!
回复 使用道具 举报
wanghongye 黑马帝 2011-11-27 18:58:54
9#
简单地说,就是标记它是一个静态方法,静态成员函数调用的必须是静态成员变量。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马