`
convolute
  • 浏览: 259288 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Java static关键字

阅读更多
   Static关键字可用来修饰类的变量、方法和内部类。Static是静态的意思,也是全局的意思。它定义的东西属于全局和类相关,不与具体实例相关。也就是说它调用的时候,只是通过类名直接调用方法(ClassName.method()),而不是创建一个对象,再通过对象名调用方法(new ClassName().method())。一定要注意Static的变量、方法不可以通过对象来调用的。他与集体的实例无关。
    代码实例:
//创建一个内部类
class Count {
	//创建属性用户保存自增后的counter值
	private int serialNumber;
	//创建一个静态变量counter
	public static int counter = 0; 

	public Count() {
		// 创建Counter的时候递增
		counter++; 
		serialNumber = counter;
	}

	public int getSerialNumber() {
		return serialNumber;

	}
}
//创建内部类
class OtherClass {
	//increment方法中调用Static变量
	public int increment() {
		// 静态的变量不属于任何实例只能直接用类调用
		return Count.counter++;
	}
}

public class StaticTest {

	public static void main(String[] args) {
		//创建Count对象数组
		Count[] cc = new Count[10];
		//对象
		OtherClass o = new OtherClass();
		//循环数组长度
		for (int i = 0; i < cc.length; i++) {
			//将实例化的对象放入数组中
			cc[i] = new Count();
			//输出自增静态变量的值
			System.out.println("cc[" + i + "].serialNumber = "
					+ cc[i].getSerialNumber());
			//输出调用静态变量自增后的值
			System.out.println(o.increment());

		}
	}
}

    类中的方法带有Static关键字,这个方法就是静态方法,静态方法也是通过类名直接调用,而不是对象名来调用。
    代码实例:
class Test{
	public static int addition(int x,int y){
		return x+y;
	}
}

public class StaticTest{
	public static void main(String [] args){
		System.out.println(Test.addition(1, 2));
	}
}

   子类不能重写父类的静态方法,也不能把父类不是静态的方法重写成静态方法。如果想隐藏父类的静态方法,在子类中声明和父类相同的方法就OK。
    main()方法是什么意思?下面我们来解释下。main()方法的前面也有static关键字,则表示main()方法是静态的方法。他也是程序的入口(或者叫做主方法)。Java程序是又Java虚拟机执行的,Java语言和虚拟机的入口就是main()方法。因为main()方法是Static的,这可以使JVM不创建实例对象就可以运行该方法。因此我们在main()方法中调用别的类的静态方法,我们不需要创建对象;反之,如果不是静态方法则要通过实例化对象,再通过对象名来调用非静态方法。
    static还可以用来修饰程序块 用{}括起来,这样我们称之静态块。用法与上述方法相同。
    代码实例:
class StaticTest {
	public static int count = 1;
	// 创建静态块
	static {
		count = Integer.getInteger("xiongxiangjun").intValue();
	}
}


分享到:
评论

相关推荐

    Java中的static关键字

    细说Java中的static关键字声明的变量、方法、静态块

    java static关键字详解(csdn)————程序.pdf

    java static关键字详解(csdn)————程序

    static关键字详解

    static关键字详解: 内容摘要: 一、static关键字定义属性 二、static属性与非static属性还有一个最大的区别,所有的非static属性必须产生实例化对象之后才可以访问,但是static属性不受实例化对象的控制,也就是 说...

    Java static关键字详细介绍与用法总结

    主要介绍了Java中static关键字的作用和用法详细介绍,主要讲了静态方法、静态变量、静态类、static和final一块用等内容。需要的朋友可以参考下

    java视频 static关键字

    讲述java中static的关键字的作用

    18.static关键字.zip

    18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static...

    谈Java static关键字的用法与好处

    主要为大家详细介绍了Java static关键字的用法与好处,感兴趣的朋友可以参考一下

    Java static关键字解析

    Java static关键字解析静态内部类(默认指外部类的内部类)静态方法静态变量静态语句块 范围:只围绕外部类进行讨论,例如内部类的内部类这种多层套娃式的暂不进行讨论 jdk版本: jdk8 静态内部类(默认指外部类的...

    Duanxx的Java学习:关键字Static详解

    关键字Static就是为了满足上面提到的两种特殊情况而诞生的。当某一个变量或方法被声明为Static的时候,这个变量或方法就不再和任何一个类的实例对象绑定,即便没有创建任何一个实例对象,也可以方位Static的变量或者...

    JAVA Static关键字的用法

    主要介绍了JAVA Static关键字的用法,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下

    Java零基础-static关键字.md

    内容概要: 本文介绍了Java中的static关键字的用法和作用。读者将学习静态成员变量和静态方法的定义和使用方式,并了解它们与实例成员变量和实例方法的区别。此外,还将探讨静态代码块和静态内部类的概念及其使用...

    Java下static关键字用法详解

    Static关键字可以修饰什么?  从以下测试可以看出, static 可以修饰:  1. 语句块  2. 成员变量(但是不能修饰局部变量)  3. 方法  4. 接口(内部接口)  5. 类(只能修饰在类中的类, 即静态内部类)  6. ...

    JAVA面试题 static关键字详解

    面试官Q1:请说说static关键字,你在项目中是怎么使用的? static 关键字可以用来修饰:属性、方法、内部类、代码块; static 修饰的资源属于类级别,是全体对象实例共享的资源; 使用 static 修饰的属性,静态属性...

    JavaOOP-04-static关键字笔记.pdf

    java中的static关键字的作用及应用场景

    static关键字简介

    在课堂中 已经简要介绍了 static 关键字的使用 我们知道 static 关键字可以用来修饰 类的成员变量 成员方法或者是代码块 下面我们就来说说这个 static 关键字 有时候程序员可能需要定义一个类成员 对它的使用不依赖...

    static关键字的特点

    static关键字的特点

    Java中static关键字用法总结[借鉴].pdf

    Java中static关键字用法总结[借鉴].pdf

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

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

    Java之static关键字

    Java开发之static关键字的讲解,废话不多说,直接上代码 一、模板类,里面包括:成员变量、静态变量、普通代码块、静态代码块、普通方法、静态方法、构造函数、静态内部类(包括:成员变量、静态变量、普通代码块、...

    MLDN魔乐JAVA_10static关键字.rar

    MLDN魔乐JAVA_10static关键字.rar

Global site tag (gtag.js) - Google Analytics