java代码求解释,static这里是什么含义 本帖最后由 MaxBinaRy 于 2011-03-09 11:29:15 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 分别?static 有多少个意思啊?不管 是 静态属性,静态方法 静态块 都是在全局数据区分配内存也就是 程序一运行 这些 static的 就已经分布在内存中,并且程序可以共享他们 static InputStreamReader in; //都是静态属性。处于静态区。可以不创建实例就直接调用static BufferedReader reader; static { in=new InputStreamReader(System.in); reader = new BufferedReader(in); } 静态区。表示不用NEW已经执行了。static String readString()静态方法。和静态属性一样。可以通过ReadData.readString()这种方式直接调用。而不用先NEW一个类实例。 package com.test;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.InputStreamReader;public class Test1 { private static InputStreamReader is = init(); private InputStreamReader is2 = init2(); static { System.out.println("执行静态代码块"); } public static InputStreamReader init() { System.out.println("初始化静态成员变量"); return new InputStreamReader(System.in); } public InputStreamReader init2() { System.out.println("初始化非静态成员变量"); return new InputStreamReader(System.in); } public static void main(String[] args) { new Test1(); }}/* * 由执行顺序,我们可以得到以下结论: * 1.静态属性在类加载进内存时完成加载,存放在data segment(数据区),并且只加载一次,只有一份 * 2.静态方法在类加载进内存时完成加载,只有一份 * 3.静态代码块在类加载进内存时完成加载,但是它的加载在静态属性加载之后,并且仅仅加载一次 * 4.非静态属性在创建对象时得到初始化,也就是与类挂钩 * */ 这些东西很纠结 简单的说 静态的 程序运行自动加载里面的属性或方法不需要再去new新的对象就能共享 Baidu 吧 Google吧 不管 是 静态属性,静态方法 静态块 都是在全局数据区分配内存也就是 程序一运行 这些 static的 就已经分布在内存中,并且程序可以共享他们 为什么基本类型给可以赋值给对象 关于java的异常捕捉 新手的问题————一个异常错误 关于packpage和 .class调用的问题 有谁有关于Java的面试试题呢? Java画余弦曲线,哪里错误了? 中文编码问题。求助 正则表达式的书写问题 什么是有效的声明包括接口的定义? java 的简单问题 5 ??? java在win7里的环境变量设置 求助:win7安装Java6的时候出现错误:找不到Java.dll
static 有多少个意思啊?
不管 是 静态属性,静态方法 静态块 都是在全局数据区分配内存
也就是 程序一运行 这些 static的 就已经分布在内存中,并且程序可以共享他们
static BufferedReader reader;
static
{
in=new InputStreamReader(System.in);
reader = new BufferedReader(in);
}
静态区。表示不用NEW已经执行了。
static String readString()静态方法。和静态属性一样。可以通过ReadData.readString()这种方式直接调用。而不用先NEW一个类实例。
import java.io.FileNotFoundException;
import java.io.InputStreamReader;public class Test1 {
private static InputStreamReader is = init();
private InputStreamReader is2 = init2();
static {
System.out.println("执行静态代码块");
}
public static InputStreamReader init() {
System.out.println("初始化静态成员变量");
return new InputStreamReader(System.in);
}
public InputStreamReader init2() {
System.out.println("初始化非静态成员变量");
return new InputStreamReader(System.in);
}
public static void main(String[] args) {
new Test1();
}
}/*
* 由执行顺序,我们可以得到以下结论:
* 1.静态属性在类加载进内存时完成加载,存放在data segment(数据区),并且只加载一次,只有一份
* 2.静态方法在类加载进内存时完成加载,只有一份
* 3.静态代码块在类加载进内存时完成加载,但是它的加载在静态属性加载之后,并且仅仅加载一次
* 4.非静态属性在创建对象时得到初始化,也就是与类挂钩
*
*/
简单的说 静态的 程序运行自动加载
里面的属性或方法不需要再去new新的对象就能共享
Baidu 吧 Google吧
也就是 程序一运行 这些 static的 就已经分布在内存中,并且程序可以共享他们