Java中Static关键字如何正确使用?

2026-05-24 10:331阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1373个文字,预计阅读时间需要6分钟。

Java中Static关键字如何正确使用?

`static` 关键字的作用:用于修饰成员变量和方法,被修饰的成员变量和方法属于类,而不是单个对象。这意味着,即使没有创建对象,也可以直接通过类名来访问这些成员。

首先,我们介绍类变量。当静态成员变量被声明为 `static` 时,它属于类本身,而不是类的任何实例。这意味着无论创建多少个类的实例,静态变量的值都是共享的。

例如:javapublic class MyClass { static int staticVar=10; // 类变量

public static void main(String[] args) { System.out.println(staticVar); // 输出:10 }}

在上面的例子中,`staticVar` 是一个类变量,可以直接通过类名 `MyClass.staticVar` 访问,无需创建类的实例。

静态方法也是类似的。静态方法属于类,因此可以直接通过类名调用,而不需要创建类的实例。

例如:javapublic class MyClass { static void staticMethod() { System.out.println(This is a static method.); }

public static void main(String[] args) { MyClass.staticMethod(); // 输出:This is a static method. }}

在上面的例子中,`staticMethod` 是一个静态方法,可以直接通过类名 `MyClass.staticMethod()` 调用。

总结来说,`static` 关键字用于修饰属于类的成员变量和方法,使得它们可以在不创建对象的情况下直接通过类名访问。

static关键字的作用:

用来修饰成员变量和方法,被修饰的成员是属于类的,而不单单是属于某个对象的,也就是说,可以不靠对象来调用。

首先我们来介绍类变量

当static修饰成员变量时,该变量称为类变量,该类的每个对象都共享同一个类变量的值,任何

对象都可以更改该变量的值,但也可以在不创建该类对象的情况下,通过类名对类变量进行操作

命名格式

static 数据类型 变量名;

static int age;

下面我们来举个例子,让大家体会体会类变量的作用

就比如梁山有108位好汉我们给这108位好汉按照次序每人一个编号,这就需要使用到类变量

定义一个Person类

public class Person { private int age; private String name; private int id; private static int count=1; public int getId() { return id; } @Override public String toString() { return "Person{" + "age=" + age + ", name='" + name + '\'' + ", id=" + id + '}'; } public void setId(int id) { this.id=count; count++; } public Person(int age, String name) { this.age = age; this.name = name; this.id=count; count++; } public Person() { } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } }

主函数

public class Test { public static void main(String[] args) { Person one = new Person(18, "及时雨宋江"); System.out.println(one); Person two = new Person(18, "卢俊义"); System.out.println(two); } }

结果

我们看到id的数值在不断的+1,这是因为他们的id都等于了一个公共的类变量

接下来我们来介绍静态方法

静态方法即类中使用static修饰的方法,该方法使用类名可以直接调用,不需要创建类的对象

定义格式

修饰符 static 返回置类型 方法名 (参数列表){

//执行语句

}

示例

public static void eat(){ System.out.println("吃饭了"); }

使用静态方法的注意事项

Java中Static关键字如何正确使用?

静态方法只可以直接访问类变量与静态方法

静态方法不能访问普通成员变量或成员方法

静态方法中不可以使用this关键字(因为this代表的是使用该方法的对象,而静态方法是属于类的,this无从指向,所以不可以使用)

下面我们写一段代码来使用一下静态方法

public class Person2 { public static void test(){ System.out.println("这是静态方法" ); } }

public class Test { public static void main(String[] args) { System.out.println("这是使用类名调用的:"); Person2.test(); Person2 person2 = new Person2(); System.out.println("这是使用对象调用的:"); person2.test(); } }

运行结果

下面我们从内存的角度来讲讲静态的原理

先上代码

public class Teacher { private int age; private String name; private static String subject="math"; public Teacher(int age, String name) { this.age = age; this.name = name; } public Teacher() { } @Override public String toString() { return "Teacher{" + "age=" + age + ", name='" + name + '\'' + '}'; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public static String getSubject() { return subject; } public static void setSubject(String subject) { Teacher.subject = subject; } }

public class Test { public static void main(String[] args) { Teacher wang = new Teacher(18, "wang"); Teacher li = new Teacher(19, "li"); } }

小结:普通成员变量操作各自空间,静态变量操作共享空间

静态代码块,敲重点!!!这个在我们后面学习中会经常使用到

什么是静态代码块呢?

定义在成员位置,使用static修饰的代码块{}

位置:类中方法外

执行随着类的加载而执行且只执行一次,优先于main方法和构造方法的执行

格式

public class Person { static { } }

这里就不深究了后面的文章我找几乎再说说

以上就是static关键字的一些基础知识,如有错误请各位批评指正

到此这篇关于JAVA Static关键字的用法的文章就介绍到这了,更多相关JAVA Static关键字内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

本文共计1373个文字,预计阅读时间需要6分钟。

Java中Static关键字如何正确使用?

`static` 关键字的作用:用于修饰成员变量和方法,被修饰的成员变量和方法属于类,而不是单个对象。这意味着,即使没有创建对象,也可以直接通过类名来访问这些成员。

首先,我们介绍类变量。当静态成员变量被声明为 `static` 时,它属于类本身,而不是类的任何实例。这意味着无论创建多少个类的实例,静态变量的值都是共享的。

例如:javapublic class MyClass { static int staticVar=10; // 类变量

public static void main(String[] args) { System.out.println(staticVar); // 输出:10 }}

在上面的例子中,`staticVar` 是一个类变量,可以直接通过类名 `MyClass.staticVar` 访问,无需创建类的实例。

静态方法也是类似的。静态方法属于类,因此可以直接通过类名调用,而不需要创建类的实例。

例如:javapublic class MyClass { static void staticMethod() { System.out.println(This is a static method.); }

public static void main(String[] args) { MyClass.staticMethod(); // 输出:This is a static method. }}

在上面的例子中,`staticMethod` 是一个静态方法,可以直接通过类名 `MyClass.staticMethod()` 调用。

总结来说,`static` 关键字用于修饰属于类的成员变量和方法,使得它们可以在不创建对象的情况下直接通过类名访问。

static关键字的作用:

用来修饰成员变量和方法,被修饰的成员是属于类的,而不单单是属于某个对象的,也就是说,可以不靠对象来调用。

首先我们来介绍类变量

当static修饰成员变量时,该变量称为类变量,该类的每个对象都共享同一个类变量的值,任何

对象都可以更改该变量的值,但也可以在不创建该类对象的情况下,通过类名对类变量进行操作

命名格式

static 数据类型 变量名;

static int age;

下面我们来举个例子,让大家体会体会类变量的作用

就比如梁山有108位好汉我们给这108位好汉按照次序每人一个编号,这就需要使用到类变量

定义一个Person类

public class Person { private int age; private String name; private int id; private static int count=1; public int getId() { return id; } @Override public String toString() { return "Person{" + "age=" + age + ", name='" + name + '\'' + ", id=" + id + '}'; } public void setId(int id) { this.id=count; count++; } public Person(int age, String name) { this.age = age; this.name = name; this.id=count; count++; } public Person() { } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } }

主函数

public class Test { public static void main(String[] args) { Person one = new Person(18, "及时雨宋江"); System.out.println(one); Person two = new Person(18, "卢俊义"); System.out.println(two); } }

结果

我们看到id的数值在不断的+1,这是因为他们的id都等于了一个公共的类变量

接下来我们来介绍静态方法

静态方法即类中使用static修饰的方法,该方法使用类名可以直接调用,不需要创建类的对象

定义格式

修饰符 static 返回置类型 方法名 (参数列表){

//执行语句

}

示例

public static void eat(){ System.out.println("吃饭了"); }

使用静态方法的注意事项

Java中Static关键字如何正确使用?

静态方法只可以直接访问类变量与静态方法

静态方法不能访问普通成员变量或成员方法

静态方法中不可以使用this关键字(因为this代表的是使用该方法的对象,而静态方法是属于类的,this无从指向,所以不可以使用)

下面我们写一段代码来使用一下静态方法

public class Person2 { public static void test(){ System.out.println("这是静态方法" ); } }

public class Test { public static void main(String[] args) { System.out.println("这是使用类名调用的:"); Person2.test(); Person2 person2 = new Person2(); System.out.println("这是使用对象调用的:"); person2.test(); } }

运行结果

下面我们从内存的角度来讲讲静态的原理

先上代码

public class Teacher { private int age; private String name; private static String subject="math"; public Teacher(int age, String name) { this.age = age; this.name = name; } public Teacher() { } @Override public String toString() { return "Teacher{" + "age=" + age + ", name='" + name + '\'' + '}'; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public static String getSubject() { return subject; } public static void setSubject(String subject) { Teacher.subject = subject; } }

public class Test { public static void main(String[] args) { Teacher wang = new Teacher(18, "wang"); Teacher li = new Teacher(19, "li"); } }

小结:普通成员变量操作各自空间,静态变量操作共享空间

静态代码块,敲重点!!!这个在我们后面学习中会经常使用到

什么是静态代码块呢?

定义在成员位置,使用static修饰的代码块{}

位置:类中方法外

执行随着类的加载而执行且只执行一次,优先于main方法和构造方法的执行

格式

public class Person { static { } }

这里就不深究了后面的文章我找几乎再说说

以上就是static关键字的一些基础知识,如有错误请各位批评指正

到此这篇关于JAVA Static关键字的用法的文章就介绍到这了,更多相关JAVA Static关键字内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!