Java里面static一般用来修饰成员变量或函数。但有一种特殊用法是用static修饰内部类,普通类是不允许声明为静态的,只有内部类才可以。被static修饰的内部类可以直接作为一个普通类来使用,而不需实例一个外部类(见如下代码)
public class OuterClass {
public static class InnerClass{
InnerClass(){
System.out.println("============= 我是一个内部类'InnerClass' =============");
}
}
}
public class TestStaticClass {
public static void main(String[] args) {
// 不需要new一个OutClass
new OuterClass.InnerClass();
}
}
如果没有用static修饰InterClass,则只能按如下方式调用:
package inner_class;
public class OuterClass {
public class InnerClass{
InnerClass(){
System.out.println("============= 我是一个内部类'InnerClass' =============");
}
}
}
public class TestStaticClass {
public static void main(String[] args) {
// OutClass需要先生成一个实例
OuterClass oc = new OuterClass();
oc.new InnerClass();
}
}
分享到:
相关推荐
在C++中,使用static关键字可以修饰变量和函数,具有不同的作用。下面对这些知识点进行详细解释。 首先,静态变量(static variable)的主要存在意义在于它们能够在函数调用结束后仍然保持其值。普通变量在函数内部...
在Java中,`static`关键字是面向对象编程的一个重要组成部分,它用于修饰类的成员变量和成员方法。本章节将深入探讨`static`关键字在Java中的应用及其原理。 首先,我们要理解`static`关键字的基本概念。`static`...
"关于static关键字的总结" static 关键字是 Java 语言中一个非常重要的概念,它可以用来修饰变量、方法、内部类和代码块等。下面我们将详细介绍 static 关键字的由来、作用和用法。 一、static 关键字的由来 在 ...
通过类名称来调用静态变量 ">在课堂中 已经简要介绍了 static 关键字的使用 我们知道 static 关键字可以用来修饰 类的成员变量 成员方法或者是代码块 下面我们就来说说这个 static 关键字 有时候程序员可能需要定义...
1. 工具类:可以使用static关键字来创建工具类,例如`Math`类,所有数学操作都可以使用静态方法调用。 2. 单例模式:可以使用static关键字来实现单例模式,例如: ```java public class Singleton { private ...
在Java编程语言中,`static`关键字是一个非常重要的修饰符,它有多种用途,涉及到类、对象以及变量和方法的生命周期。本视频教程详细讲解了`static`关键字在Java中的应用及其背后的原理。 首先,我们要理解`static`...
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。
static关键字修饰的成员变量称为静态成员变量,这类成员变量在类生成对象时共享同一个副本,所有对象共享该静态成员变量。例如,在 StaticTest1.java 例子中,myStatic1 和 myStatic2 共享同一个静态成员变量a,当对...
Static关键字在Java编程语言中扮演着至关重要的角色,它允许我们创建类级别的变量和方法,这些变量和方法不依赖于类的实例即可访问。在深入理解Static关键字之前,我们需要了解类和对象的概念。类是创建对象的蓝图,...
`mutable` 是C++特有的,用于修饰类的成员变量。即使在`const`成员函数中,`mutable`修饰的成员变量也可以被修改。这样可以在不影响对象的“常量性”(即对象的行为看起来是不变的)的情况下,允许内部状态的改变。...
Java中的`static`关键字是面向对象编程中的一个重要概念,它用于修饰类的成员变量和成员方法,以及静态初始化块。在Java中,`static`关键字具有以下几个核心特点和用途: 1. **类属性与类方法的设计思想**: 类的...
它可以用来修饰类、方法和变量。对于类,如果一个类被声明为`final`,那么它不能被其他类继承,这有助于保证类的设计完整性和防止意外的子类化。例如,Java中的`String`类就是`final`的,目的是防止对其内部结构的...
在 Java 编程语言中,final 和 static 是两个非常重要的关键字,它们可以用来修饰类、方法、变量等,了解它们的使用方法和限制非常重要。本文将详细总结 final 和 static 的使用方法和限制。 一、final 关键字 ...
正确理解和使用`static`关键字对于编写高效、清晰的Java代码至关重要,尤其是在设计类的结构和管理资源时。同时,需要注意过度使用`static`可能导致代码耦合度增加,不易维护,因此应谨慎使用。
在Java编程语言中,`static`关键字扮演着至关重要的角色,它能够修饰类的成员变量和方法,赋予它们特殊的特性。本篇文章将深入探讨`static`关键字的含义、用法以及在实际编程中的应用。 一、静态关键字的定义与特点...
Static关键字可以修饰什么? 从以下测试可以看出, static 可以修饰: 1. 语句块 2. 成员变量(但是不能修饰局部变量) 3. 方法 4. 接口(内部接口) 5. 类(只能修饰在类中的类, 即静态内部类) 6. ...
静态成员变量也被称为类变量,是指在类中定义时使用`static`修饰符的变量。此类变量不依赖于任何特定的对象实例,而是由类的所有实例共享。 **示例代码:** ```java public class Counter { public static int ...
例如,在Student类中,我们可以使用static关键字修饰id_count变量,使其属于类本身,而不是对象自己。 package app_one; public class Student { private int id = 0 ; private int age = 0; private String ...
##### 2.3 修饰类的成员 **2.3.1 静态成员变量** 静态成员变量属于类本身而非类的实例,所有实例共享同一个静态成员变量。静态成员变量必须在类定义外部进行初始化。 **示例代码:** ```cpp #include class ...
在Java编程语言中,`static`关键字扮演着至关重要的角色,它是Java类和对象特性的一个核心组成部分。`static`关键字可以应用于变量、方法和代码块,以赋予它们不同的特性和功能。在这里,我们将深入探讨`static`...