Java中static关键字的使用

static关键字

static表示“静态”的意思,可以用来修饰成员变量和成员方法,static的主要作用在于创建独立于具体对象的域变量或者方法。

简单理解:
被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问。(被static关键字修饰的方法或者变量可以看作是这个类的属性~)并且不会因为对象的多次创建而在内存中建立多份数据。
下面通过这段代码来感受一下:

这里是一个Student类,我们有String类型的name属性与static修饰的int类型的classroom教室,以及他们的getter&setter方法(IDEA中可以用Alt Insert快捷键选择getter and setter并选中要创建方法的属性来生成相对应的getter&setter方法),还有一个print打印信息的方法,以下是main方法的内容

我们创建了三个学生对象,先打印看看他们的信息,然后调用方法修改我们static修饰的classroom属性(可以看到我们使用“类名.(static修饰的)方法”来修改了我们的static修饰的属性,我们可以直接理解为,这个static修饰的属性classroom其实就是Student这个类的属性)
下面来看运行结果

上面的0是默认值,102是我们修改后的值
如果还没有理解的话,看看下面这个图就懂啦

注意:

  1. 静态成员在类加载时加载并初始化。
  2. 无论一个类存在多少个对象 , 静态的属性, 永远在内存中只有一份(可以理解为所有对象公用 )
  3. 在访问时: 静态不能访问非静态 , 非静态可以访问静态 !

    在非静态的say2方法中调用静态say方法不会报错

    在静态的say方法中调用非静态的say2方法会报错

由第一点我们知道静态方法可以在类中无对象时就被调用,即静态出现肯定是早与非静态的,打个比方,2000年出生的人不能一出生立马认识2001年出生的人,因为后者还不存在,但是2001年出生的人可以一出生就认识2000年出生的人,因为他们都已经存在了。

最后欢迎大家来点赞留言~

来源:https://www.icode9.com/content-1-784301.html

(0)

相关推荐

  • Java基础之:OOP——代码块

    代码块又称初始化块,是类中的成员(即类的一部分),类似于方法,将逻辑语句封装在方法体中,通过{}包围起来,也是通过调用执行. 但和方法不同,没有方法名,没有返回,没有参数,只有方法体,而且不用通过对象 ...

  • Java基本概念:接口

    一.简介 描述: 普通类只有具体实现,抽象类具体实现和规范都有,接口只有规范! 接口就是比抽象类还抽象的抽象类,可以更加规范的对子类进行约束,全面专业地实现了规范和具体实现的分离. 抽象类还提供某些具 ...

  • java中static关键字

    static关键字: 特点: 1.static是一个修饰符,用于修饰成员.(成员变量,成员函数)static修饰的成员变量称之为静态变量或类变量. 2.static修饰的成员被所有的对象共享. 3.s ...

  • Java中的static关键字和new关键字作用介绍

    一.static关键字的作用 1.可以用于修改类的成员变量.代码块和类 通过static可以将类的成员声明为静态成员,静态的成员归属于整个类,而不是属于某个对象.无论通过类还是对象访问静态成员,操作的 ...

  • Static关键字

    Static关键字 Static修饰的属性称为类变量,修饰的方法称为静态方法,类变量和静态方法可直接使用类名点变量名/方法名调用, 但实例变量(没有static修饰的属性)和非静态方法就必须通过new ...

  • Java基础之:OOP——类变量与类方法

    类变量与类方法,我们习惯也将其称为静态变量与静态方法. 类变量/静态变量 通过一个实际案例来了解,为什么需要使用静态变量. 引入案例 声明一个学生类,每创建一个学生对象,统计学生的人数. public ...

  • 关于Java中static关键字的用法以及从内存角度解析

    在Java中,static可以用来修饰成员变量和成员方法. 修饰成员变量,称为静态成员方法 修饰静态方法,称为静态成员方法 搞清楚用法和区别之前,先搞清static声明的变量和普通非静态变量在内存的分 ...

  • Java 中的关键字

    Java 中有多少个关键字,有大小写之分吗? Java 中有 48 个关键字在使用 + 两个保留关键字未使用,共 50 个关键字. Java 关键字全部都由是小写组成. Java 中保留关键字分别是哪 ...

  • Java中this关键字的使用

    一,表示类中属性 1,没有使用this的情况   class Person{ // 定义Person类 private String name ; // 姓名 private int age ; // ...

  • 从零开始学Java(十三)Java中this关键字的使用

    ✔上一篇Java零基础系列文章我们说到了Java封装,今天这篇文章的主要目标是带大家

  • java中final关键字的作用

    final关键字可以用于三个地方.用于修饰类.类属性和类方法. 被final关键字修饰的类不能被继承,被final关键字修饰的类属性和类方法不能被覆盖(重写): 对于被final关键字修饰的类属性而言 ...

  • java中的关键字

    static 静态的 定义在类里面的带有static的变量叫做类变量 ​他不属于类里面的任何一个对象,他属于这个类,可以用: 类名字.该变量 任何一个对象名.该变量 ​来调用改变它,这个变量只有一份, ...

  • Java中this关键字的详解

    在java的学习中,当接触到类这一章的时候,就会避免不了的接触到this关键字. 首先,this关键字指向的是当前对象的引用 作用: this.属性名称 指的是访问类中的成员变量,用来区分成员变量和局 ...

  • Java中的关键字——final

    final是Java中的一个关键字,主要表示"最终态,最终的,不可修改"的意思:它可以修饰Java中的类,方法,属性等. 一. final类: 当final修饰Java中的类的时候 ...