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方法返回本类型的实例时,既可以当做普通的工厂方法使用,也可以作为操作本类型内部对象池的
相关问答:
我目前在本地的linux上写了一个swing的界面,想通过这个界面来控制其它电脑的linux重启。
我知道用Runtime.getRuntime().exec("shutdown -r");可以控制本机Linux重启,但是怎么控制远程的linux重启呢? ......
不知道是什么原因,我该如何处理,请大虾们指教了,小弟在此谢过。。。。
错误信息如下:
The program being debugged was signaled while in a function called from GDB.
GDB has restored the context t ......
工作地点:上海张江
学历要求:大本或以上
专业要求:计算机相关专业
英语:熟练(美国项目,英语工作环境,英语是必须)
简历投递:wendy_qian@163.com
MSN:wendydzmm@hotmail.com
......
现在遇到这样一个问题:
在java 中编写swing程序, 添加按钮jbServerStart,目的是当点击jbServerStart时,程序会自动创建两个与其他终端通信的对象,代码如下:
private Container createButtonPane ......
用RandomAccessFile写入TXT文件查看时是乱码,请问有什么方法可以写成可读的文件,不是用其他的文件操作,就是只用RandomAccessFile的方法是否可以实现?
Java code:
import java.io.*;
public class RandomAcce ......