Thinking in Java 中这句话的理解
Thinking in Java 3th 中文版 第二章 Static关键字的解释中有如下一句话:
“和其他任何方法一样,static方法可以创建或使用与其类型相同的被命名对象,因此,static方法尝尝拿来做“牧羊人”的角色,负责看护与其隶属同一类型的实例群”
希望各位朋友能用举例的形势解答下如下问题:
一,方法的类型是什么?返回值类型?
二,“牧羊人”的角色该如何理解?如何编程可以起到“看护”的作用?
Java code:
在Java里,一般情况下,你需要产生某个对象,再通过该对象取用其数据和
函数,但若将某个函数或数据声明为static.它将不在局限与所需的class object,即使没有任何object,外界还是可以调用其static函数。
例如:
class statictest { static int i = 47; }
statictest st = new statictest ( );
这里st.i和statictest.i作用相同,他们共同指向一块内存。
class staticfun
{
static void incr( ) { stitictest.i++ }
}
staticfun sf = new staticfun ( );
无论是通过对象----sf.incr()还是直接通过class---staticfun,incr ( )调用都是一样的 。
简而言之 static的方法里只能调用static的东西
楼上两位扯远了,楼主问的问题你们都没回答啊。
我对前半句话的理解是,static方法可以用来创建本类型的对象,也就是说用static方法做工厂方法,产生所需的实例。
所谓牧羊人的角色,负责看护与其隶属同一类型的实例群,我这样理解:static方法返回本类型的实例时,既可以当做普通的工厂方法使用,也可以作为操作本类型内部对象池的
相关问答:
我的开发的平台是Myeclipes6.0 + tomcat5.x + mysql
我所有的编码方式都是用的UTF-8
我只用了Strtus框架
在一个form中如下用的是post的提交方式:
<form class="form" action=&quo ......
<%@page language="java" contentType="text/html;charset=gb2312" import="java.sql.*"%>
<jsp:useBean id="db" class="wang.connectDB"/>
< ......
我的java applet 嵌入html后无法显示,而用appletviewer显示正常为什么,还有就是用html converter转化后可以显示,为什么?请大侠赐教!
HTML code:
<HTML>
<HEAD>
<TITLE>TEST.HTML< ......
我们有项目想组建一个开发团队,
主要用 tomcat,java,struts2,我们的核心成员都是经验非常丰富的系统设计师,
如果您在天津,同时对java比较感兴趣,
可以加入我们。
希望要求
1。爱好编程
......