美文网首页
Java类中静态 - 成员 - 局部

Java类中静态 - 成员 - 局部

作者: 糖砂西红柿 | 来源:发表于2018-06-13 11:20 被阅读3次

首先可以明确地说出一个Java类中大体分为两大块
1.变量
2.方法
但是方法与变量又有不同的类型
总体来说,方法与变量的种类是能对应起来的。
3 -> 2
即3种变量类型-----2种方法类型

分类 变量 方法
静态(static) 静态变量 静态方法
成员 成员变量 成员方法
局部 局部变量

以上我们就可以较为直观的感受到变量与方法的分类

变量与方法存在的意义就是被使用,那我们该如何使用这些变量,或是方法呢?

很关键!!需要注意!
1.静态方法和静态变量会随着类的定义而被分配和载入内存中。
2.成员方法和成员变量只有在类实例化后new出来的的那个对象的内存空间中才有成员方法与成员变量的代码片段。

根据上面的特点以及我们的测试,可以得知:
1.静态方法可以访问静态变量以及其他的静态方法。
2.成员方法可以访问成员变量,成员方法,静态变量和静态方法。
之所以会形成以上这样一种模式成员方法可以访问各种静态代码,而反过来静态方法不能访问各种成员代码段的原因是,静态方法静态属性在类 被定义的时候就已经载入内存了,而此时成员方法与成员变量并没有在内存中,如果在静态方法中访问成员变量/方法就会报如下错误

图片.png
形成这种模式(套路)的原因是由JVM决定的。
所以在开发中我们需要记得,静态只能访问静态(包括静态之间的赋值),而成员方法能访问静态与成员。总体来说,静态方法的范围更大,类与类所实例化出来的任意一个对象都可以进行访问。而成员方法只能实例化的那个对象访问属于他自己的成员方法/变量。
  • 在方法中还有一个比较特殊的方法
    构造方法记住一点,一般方法一定要写请出返回值类型(包括getter与setter---具体类型与void)
    但是构造方法无需写出返回值类型
    (也可以反推,在类中如果一个方法没有写返回值类型,那么他就是一个构造方法---构造方法连void都不用写,很特殊),
    在实例化对象的时候,new 关键字其实就是调用了构造方法。
    构造方法是实例化对象时进行初始化的。

相关文章

  • Java类中静态 - 成员 - 局部

    首先可以明确地说出一个Java类中大体分为两大块1.变量2.方法但是方法与变量又有不同的类型总体来说,方法与变量的...

  • java 初学语法-变量、枚举

    1、Java 中主要有如下几种类型的变量 局部变量 类变量(静态变量) 成员变量(非静态变量) 2、枚举限制变量只...

  • 提示二十四

    今天来看提示二十四: 优先考虑静态成员类。 作者上来就介绍了四种嵌套类:静态成员类,非静态成员类,匿名类和局部类。...

  • Java--内部类的分类-1

      在Java中内部类主要分为成员内部类(非静态内部类、静态内部类)、匿名内部类、局部内部类。 成员内部类(可以使...

  • Java中的反射(Class类的使用,获取类的信息,方法使用等)

    Class类的使用 Java中,静态成员、普通数据类型不是对象,静态成员是属于类的,而不是属于某个对象的 类是对象...

  • 反射基本概念与Class(三):包信息和方法

    Class类的使用 Java中,静态成员、普通数据类型不是对象,静态成员是属于类的,而不是属于某个对象的 类是对象...

  • Java_basic_3: static, this 关键字

    static static 静态变量 Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所...

  • java学习4/11

    局部变量和成员变量的区别 Java中的static使用 Java中的静态内部类 Java中继承的初始化顺序 Jav...

  • java相关零碎知识

    java初始化,加载顺序: 父类的静态成员变量,父类静态代码块,子类的静态成员变量,子类的静态代码块,父类非静态成...

  • Java内部类使用

    内部类 在Java中内部类主要分为成员内部类(非静态内部类、静态内部类)、匿名内部类、局部内部类。 非静态态内部类...

网友评论

      本文标题:Java类中静态 - 成员 - 局部

      本文链接:https://www.haomeiwen.com/subject/uwxjeftx.html