`
clover珂
  • 浏览: 3294 次
  • 性别: Icon_minigender_2
  • 来自: 长沙
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Java中的静态关键字static

    博客分类:
  • java
阅读更多

1、静态方法和静态变量不属于某个对象,而是属于某一个类
2、静态方法和静态变量的引用可以直接通过类名调用
3、当声明一个对象时,并不产生static变量的拷贝,而是该类所有的实例变量共同拥有一个static变量
4、静态方法只能调用其他静态方法,只能访问静态数据,不能以任何方式引用this 或super

class UseStatic {
static int a = 3;
static int b;
static void meth(int x) {
System.out.println("x = " + x);
System.out.println("a = " + a);
System.out.println("b = " + b);
}
static {
System.out.println("Static block initialized.");
b = a * 4;
}
public static void main(String args[]) {
meth(42);
}
}
 

 
然后思考一个问题:假如一个程序中没有main方法,该程序还能执行吗?
因为一开始学习语言的时候,写个最基本的helloworld,教科书或者是老师都会说需要写一个main方法,它是程序的入口,程序从main方法开始执行。那么没有了main方法是不是一定不能执行了?
假如我们用Eclipse编写程序,没有main是会报错的。所以用记事本写了这样一个小程序:
class UseStatic {
static int a = 3;
static int b;

static {
System.out.println("Static block initialized.");
b = a * 4;
System.out.println("a + b = "+(a+b));
}

}
 
 
结果是:

 
程序运行了静态代码块,但是没有找到main方法,所以会抛出异常。
static代码块即静态代码块,是在类中独立于类成员的static语句块,可以有多个,位置可以随便放,它不在任何的方法体内,JVM加载类时会执行这些静态的代码块,如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次。


 
 

 

  • 大小: 2.2 KB
  • 大小: 2.8 KB
分享到:
评论

相关推荐

    Java中的static关键字

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

    Java零基础-static关键字.md

    在阅读过程中,尝试编写简单的Java程序,使用static关键字定义和调用静态成员变量和静态方法。 建议通过阅读相关的Java教材或搜索资料,进一步扩展学习与static关键字相关的高级主题,如静态代码块、静态内部类和...

    Java static 静态关键字之我见

    Java static 静态关键字 某个类中的成员或者方法加上static之后,该成员或者方法是属于类(Class)的,而不属于对象(Object)的,也就是说,你用某个Class类new出来的东西的空间当中,不包含这个static成员或对象。...

    Java静态static关键字原理详解

    主要介绍了Java静态static关键字原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    Java之static关键字

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

    java使用静态关键字实现单例模式

    主要为大家详细介绍了java使用静态关键字实现单例模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    Java中static关键字的作用和用法详细介绍

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

    java 关键字static详细介绍及如何使用

    主要介绍了java 关键字static详细介绍及如何使用的相关资料,需要的朋友可以参考下

    java中带static关键字的程序内存分析

    想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件

    static关键字简介

    通过类名称来调用静态变量 ">在课堂中 已经简要介绍了 static 关键字的使用 我们知道 static 关键字可以用来修饰 类的成员变量 成员方法或者是代码块 下面我们就来说说这个 static 关键字 有时候程序员可能需要定义...

    【Java基础】Java8新特性—接口中使用default和static关键字

    接口中的变量默认类型是public static final,也是就是说是 公有静态常量 。 而方法默认是public abstract,公有抽象方法,但是事实真的是这样吗? 一.新特性 Java 1.8对接口有两个方面的增强:接口中可以添加使用...

    Java下static关键字用法详解

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

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

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

    Java提高篇之关键字static

     在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,当然也可以修饰代码块。  Java把内存分为...

    详解Java中staitc关键字

    大家都知道,在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的,而所谓静态是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间,也是只要程序在运行,那么这块内存会一直存在。...

    从内存地址解析Java的static关键字的作用

    主要介绍了从内存地址解析Java的static关键字的作用,包括静态成员变量和静态方法等重要内容,需要的朋友可以参考下

    Java静态方法[Static]

    title: Java静态方法[Static] date: 2020-03-24 17:45:16 author: JF blog:https://www.huqifa.com/ tags: – Java categories: – Java Java静态方法[Static] static关键字 作用:是一个修饰符,用于修饰成员...

    020509_【第5章:面向对象基础】_this关键字与static关键字

    本次内容:1、020509_【第5章:面向对象基础】_this关键字;2、020509_【第5章:面向对象基础】_static关键字

    java中static作用

    static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念……

    JAVA面试题 static关键字详解

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

Global site tag (gtag.js) - Google Analytics