声明为static的变量实质上就是全局变量。当声明一个对象时,并不产生static变量的拷贝,而是该类所有的实例变量共用同一个static变量。
声明为static的方法有以下几条限制:
1它们仅能调用其他的static 方法。
2它们只能访问static数据。
3它们不能以任何方式引用this 或super
需要了解2个概念:内部类和静态修饰符static
1)首先,用内部类是因为内部类与所在外部类有一定的关系,往往只有该外部类调用此内部类。所以没有必要专门用一个Java文件存放这个类。
2)静态都是用来修饰类的内部成员的。比如静态方法,静态成员变量,静态常量。它唯一的作用就是随着类的加载(而不是随着对象的产生)而产生,以致可以用类名+静态成员名直接获得。
这样静态内部类就可以理解了,因为这个类没有必要单独存放一个文件,它一般来说只被所在外部类使用。并且它可以直接被用 外部类名+内部类名 获得。
以下举例说明怎么使用:
Student类有个叫School的内部类(非静态)
Student stu = new Student();
stu.School sch = new stu.School();
sch就是School的一个对象。
假如School是内部静态类:
Student.School sch = new Student.School();
分享到:
相关推荐
- `public`修饰符常用于定义API或框架中的类和方法,使得它们能够被外部代码访问和调用。 - Java程序总是从`public`类的`main`方法开始执行,这是程序的入口点。 #### 2. Protected - **概述**: - `protected`...
static 方法访问修饰符表示静态方法,可以被类的所有实例共享,不需要创建类的实例就可以访问。 final 方法访问修饰符 final 方法访问修饰符表示防止任何子类重载该方法。 abstract 方法访问修饰符 abstract ...
非访问修饰符包括 final、static 和 abstract 三种,用于控制类、成员变量和方法的继承关系和行为。 一、访问修饰符 访问修饰符是 Java 中最基本的修饰符,用于控制类、成员变量和方法的访问权限。访问修饰符有四...
通过以上分析,我们可以看出`auto`、`register`、`static`和`extern`这些存储类修饰符在C语言中扮演着重要角色,它们不仅控制着变量的生存周期,还决定了变量的可见性和访问范围。合理地使用这些修饰符可以提升代码...
- **定义**:`static`修饰符用于声明静态成员,这些成员属于类本身而不是实例。 - **应用场景**: - 当需要为类提供一个常量或共享资源时。 - 在不需要创建类实例的情况下就可以访问某些方法或属性时。 ### 静态...
本文将详细介绍C#中的类修饰符及其使用场景,帮助开发者更好地理解和运用这些修饰符。 #### 类修饰符 - **public**:表示类对外公开,允许任何程序集访问。这是最开放的权限级别,适用于需要跨程序集访问的类。 - ...
在Java编程语言中,`static`关键字是一个非常重要的修饰符,它有多种用途,但最常见的是用来修饰类的方法和变量。在这个主题中,我们将深入探讨`static`修饰方法的概念、作用以及它如何影响Java程序的执行。 首先,...
8. **Static**: 静态修饰符,用于声明类或方法为静态。静态类不能实例化,其所有成员都是静态的。静态构造函数在类型首次使用时执行,用于初始化静态成员,但不能初始化实例成员。 9. **Virtual**: 虚方法修饰符,...
- **static**: 静态修饰符,表示成员变量属于类而非类的实例,可以通过类名直接访问。 - **final**: 最终修饰符,用于声明常量,一旦赋值,不能更改。 - **volatile**: 易失修饰符,用于多线程环境,保证变量在多...
在Java编程语言中,修饰符是用来限制或指定代码元素(如类、方法、变量)的访问权限、特性或行为的关键词。以下是对标题和描述中提及的Java修饰符及其相关知识点的详细介绍: 1. 类的访问控制修饰符: - **public*...
3. 静态类(static):static 修饰符修饰的类称为静态类,静态类可以在定义时初始化成员变量和方法。 在 Java 中,修饰符的使用是非常重要的,合理地使用修饰符可以提高程序的安全性和可维护性。但是,过多地使用 ...
本讲义主要涵盖了Java中的几个核心概念,包括`static`、`final`、匿名对象、内部类、包、修饰符以及代码块。下面将逐一详细阐述这些知识点。 1. **`static`关键字**: `static`关键字在Java中用于声明类级别的变量...
2. **不能访问外部类的非静态成员**:由于静态内部类与外部类的静态属性和方法处于相同的静态上下文中,因此静态内部类无法访问外部类的非静态成员变量或方法。 3. **命名空间独立**:静态内部类有自己的命名空间,...
在C#等静态类型语言中,public、private和static是访问修饰符,用于控制类成员的可见性和作用域。而在JavaScript中,由于其原型继承的特性,我们通常使用函数作用域和闭包来模拟这些行为。 下面我们将基于提供的...
Java语言中的修饰符是编程语法中的重要组成部分,它们用于定义类、接口、变量和方法的特性,从而控制访问权限、实现抽象概念、确保不可变性以及优化代码结构。本章将详细阐述Java中的主要修饰符。 首先,我们讨论...
静态嵌套类不能访问外部类的非静态成员变量和方法,但是可以访问外部类的静态成员变量和方法。 方法内部类 方法内部类是指定义在外部类的方法中的内部类。方法内部类可以访问外部类的所有成员变量和方法,包括私有...
了解并熟练掌握这些修饰符和访问修饰符,可以帮助开发者更好地控制类、变量和方法的访问权限,设计出更安全、可维护的代码结构。在实际开发中,合理使用这些修饰符可以有效地提高代码的封装性和安全性,是Java编程...
- `static`:静态修饰符,用于声明类变量和静态方法,它们不属于类的实例,而是属于类本身。可以直接通过类名访问。 - `synchronized`:同步修饰符,用于方法或代码块,保证多线程环境下的安全性,确保同一时间...
这些修饰符决定了类、方法和变量的可见性范围。例如: - `public`:对所有类可见。 - `protected`:对同一包内的类和所有子类可见。 - `private`:只对定义它的类可见。 - 默认:在同一包内的类可见。 7. 参数...