`
yezixingchen
  • 浏览: 38550 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java 中static修饰变量的初始值

阅读更多

  大家都知道,static修饰的变量在类实例之前就已经分配内存,

  昨天去某公司面试,突然遇到此问题,心里有些发虚,回来测试了一下

 

public class StaticTest {

	public static byte a1;
	
	public static short a2;
	
	public static int a3;
	
	public static long a4;
	
	public static char b;
	
	public static double c;
	
	public static float d;
	
	public static boolean e;
	
	public static String f;

	public static Object g;
	
	public static int[] a_h;
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		System.out.println("static byte a1------"+a1);
		System.out.println("static short a2-----"+a2);
		System.out.println("static int a3-------"+a3);
		System.out.println("static long a4------"+a4);
		System.out.println("sstatic char b------"+b);
		System.out.println("static double c-----"+c);
		System.out.println("sstatic float d-----"+d);
		System.out.println("static boolean e----"+e);
		System.out.println("static String f-----"+f);
		System.out.println("static Object g-----"+g);
		System.out.println("static int[] a_h-----"+a_h);
	}

}

 

 

 

打印结果为:

static byte a1------0
static short a2-----0
static int a3-------0
static long a4------0
sstatic char b------

static double c-----0.0
sstatic float d-----0.0
static boolean e----false
static String f-----null
static Object g-----null
static int[] a_h-----null

若变量前无static修饰,并且没有对变量进行初始化,例如:

 

public class noStaticTest {

	public byte a1=1;


	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		System.out.println("static byte a1------"+a1);
		
	}

}

 

编译器会编译不通过:Cannot make a static reference to the non-static field a1

 

 

分享到:
评论

相关推荐

    Java static修饰成员变量

    Java中的`static`关键字是编程中的一个重要概念,它在Java语言中扮演着多个角色,尤其在处理类和对象时起到关键作用。`static`关键字可以用来修饰成员变量、方法、代码块以及内部类,每种情况都有其特定的含义和用途...

    java中final和static的区别

    final 关键字在 Java 中有多种用法,包括修饰变量、方法、类等。下面是 final 关键字的各种用法: 1. final 修饰变量:表示该变量一旦被初始化,程序无法修改变量的值,该变量变成了一个常量。注意,系统不会默认为...

    java中static属性学习

    本文详细介绍了Java中的`static`属性,包括静态成员变量、静态方法以及静态语句块的概念和使用方法。通过具体的代码示例,我们不仅了解了`static`关键字的基本用法,还深入探讨了静态成员变量如何在整个类之间共享,...

    JAVAStatic静态变量.doc

    Java中的`static`关键字是用来声明静态变量或静态方法的,它是面向对象编程中非常关键的一个概念。静态变量属于类,而不是类的实例,这意味着它们在内存中只有一份拷贝,所有的类实例共享这个相同的变量。当我们声明...

    Java中的成员变量

    Java中的成员变量在定义时可以有默认的初始值,如下所示: - 整型(int, byte, short, long):0 - 浮点型(float, double):0.0f, 0.0d - 字符型(char):'\u0000' (空字符) - 布尔型(boolean):false - 引用...

    Java中static、this、super、final用法

    final 关键字在 Java 中用于修饰变量、方法和类,final 关键字可以用于: 1. 修饰变量:final 变量的值不能被修改 2. 修饰方法:final 方法不能被子类 override 3. 修饰类:final 类不能被继承 例如,我们可以使用...

    Java中static变量作用和用法详解

    Java中的`static`关键字在编程中扮演着至关重要的角色,它是Java类定义的一部分,用于修饰类的成员变量、成员方法以及代码块。下面我们将详细探讨`static`变量、`static`方法以及`static`代码块的作用和用法。 1. *...

    java中final关键字和static关键字详细用法

    `static`可以修饰变量、方法和嵌套类。 1. `static`变量:这些变量被称为静态变量或类变量,它们是所有对象共享的,只有一份存储。在类加载时初始化,可以通过类名直接访问,无需创建对象。 2. `static`方法:静态...

    Java修饰符总结

    在Java中,某些修饰符可以组合使用,如`public static`、`protected final`等,以达到更精细的控制效果。例如,`public static`方法表示该方法是公共的且与类实例无关,而`protected final`变量则表示受保护的且不可...

    Java中static、this、super、final用法.doc

    在Java编程语言中,`static`、`this`、`super`和`final`是四个非常重要的关键字,它们各自有着特定的用途和含义。 1. **static**: 静态关键字`static`用于声明类级别的变量和方法,即静态变量和静态方法。静态变量...

    static 在java中的作用

    `static`是Java语言中的一个关键字,主要用来修饰类成员(变量、方法或代码块),其核心功能在于定义类级别的共享属性。通过使用`static`,可以实现对类属性和方法的共享访问,而无需创建类的实例。这在实际编程中...

    java技术:java中static作用详解

    总结起来,`static`关键字在Java中用于创建类级别的变量和方法,允许在不创建对象的情况下访问和操作它们,从而提高代码的效率和灵活性。理解和正确使用`static`关键字是编写高效、可维护的Java代码的关键。

    Java中的static关键字共3页.pdf.zip

    这些块通常用于设置`static`变量的初始值: ```java public class MyClass { static int value; static { value = 42; System.out.println("Static block executed."); } } ``` 在这个例子中,`static`代码块...

    Java提高篇之关键字static

    Java中的关键字`static`是一个非常重要的概念,它用于创建类级别的变量和方法,而不是局限于对象实例。理解`static`的用法和含义是提升Java编程技能的关键。 首先,`static`意味着“全局”或“静态”。在Java中,...

    java中final和static的总结

    1. **静态变量**:`static`修饰的变量称为静态变量,它们属于类,而不是类的任何实例。所有实例共享同一个静态变量的值。 ```java class MyClass { static int count = 0; // 类级别的计数器 } ``` 2. **静态...

    final和static用法详解JAVA

    static 关键字是 Java 中的一种访问修饰符,用于修饰变量、方法和块,下面是 static 关键字的详细解释: 1. static 变量 static 变量是属于类的变量,而不是实例变量。static 变量只有一份拷贝,所有实例共享同一...

    Java编程中常用修饰词使用方法

    Java 编程中常用修饰词使用方法 Java 语言中定义了 11 个常用的修饰词,每个修饰词都有其特定的使用场景和作用。下面对这 11 个 Java 修饰词进行详细的介绍: 1. public 修饰词 修饰对象:类、接口、成员 介绍:...

    java static学习

    Java static 关键字是 Java 语言中一个非常重要的概念,它可以修饰变量、方法、代码块和导入包等。下面我们将详细介绍 Java 中 static 关键字的使用和特点。 静态变量 Java 中的静态变量是指使用 static 关键字...

    实例解析Java关于static的作用

    `static`关键字用于修饰变量、方法以及嵌套类,它使得这些元素可以在不创建对象的情况下被访问。 首先,我们来看一下`static`修饰的静态变量。静态变量,也被称为类变量,它们在内存中只有一个副本,所有该类的对象...

Global site tag (gtag.js) - Google Analytics