Maison > Java > Javacommencer > Que sont les objets et méthodes statiques en Java

Que sont les objets et méthodes statiques en Java

王林
Libérer: 2019-11-20 11:34:09
original
3375 Les gens l'ont consulté

Que sont les objets et méthodes statiques en Java

Que sont les variables statiques ?

Les membres modifiés par static en Java sont appelés membres statiques ou membres de classe. Il appartient à la classe entière et non à un objet, c'est-à-dire qu'il est partagé par tous les objets de la classe. Les membres statiques sont accessibles directement à l’aide du nom de la classe ou à l’aide du nom de l’objet.

Utilisez static pour modifier les variables, les méthodes et les blocs de code.

public class Test1 {
    // static修饰的变量为静态变量,所有类的对象共享hobby
    static String hobby = "Tedu";
    
    public static void main(String[] args) {
        // 静态变量可以直接使用类名来访问,无需创建对象
        System.out.println("通过类名访问hobby:" + Test1.hobby);
        // 创建类的对象
        Test1 t1 = new Test1();
        // 使用对象名访问静态变量
        System.out.println("使用对象名访hobby:" + t1.hobby);
        // 使用对象名的形式修改静态变量的值
        t1.hobby = "cjj";
        // 再次使用类名访问静态白变量,值已经被修改
        System.out.println("通过类名访问hobby:" + Test1.hobby);
    }
}
Copier après la connexion

Résultats d'exécution :

通过类名访问hobby:Tedu
使用对象名访hobby:Tedu
通过类名访问hobby:cjj
Copier après la connexion

Remarque : Les membres statiques appartiennent à la classe entière Lorsque le système utilise la classe pour la première fois, de l'espace mémoire sera alloué pour. jusqu'à ce moment-là, les ressources ne seront recyclées qu'une fois la classe déchargée !

Qu'est-ce qu'une méthode statique ?

Comme les variables statiques, on peut également utiliser des méthodes statiques modifiées, appelées méthodes statiques ou méthodes de classe. En fait, la méthode principale que nous avons écrite auparavant est une méthode statique.

public class Test01 {
    //使用static关键字声明静态方法
    public static void print() {
        System.out.println("欢迎你:Cjj!");
    }
    public static void main(String[] args) {
        //直接使用类名调用静态方法
        Test01.print();
        //也可以通过对象名调用,当然更推荐使用类名调用
        Test01 t1 = new Test01();
        t1.print();
    }
}
Copier après la connexion

Résultat de l'exécution :

欢迎你:Cjj!
欢迎你:Cjj!
Copier après la connexion

Remarque :

1. Les méthodes statiques peuvent appeler directement des membres statiques de la même classe, mais ne peuvent pas appeler directement non. -membres statiques. Par exemple :

Que sont les objets et méthodes statiques en Java

Si vous souhaitez appeler des variables non statiques dans une méthode statique, vous pouvez créer un objet de la classe puis accéder aux variables non statiques via le objet. Par exemple :

Que sont les objets et méthodes statiques en Java

2. Dans les méthodes membres ordinaires, vous pouvez accéder directement aux variables non statiques et aux variables statiques du même type, telles que :

Que sont les objets et méthodes statiques en Java

3. Les méthodes non statiques ne peuvent pas être appelées directement dans les méthodes statiques. Les méthodes non statiques doivent être accessibles via des objets. Tels que :

public class Test01 {
    String name = "Cjj"; //静态成员变量
    static String hobby = "study"; //非静态成员变量
    
    //普通成员方法
    public void print1() {
        System.out.println("普通成员方法~~~"); 
    }
    
    //静态成员方法
    public static void print2() {
        System.out.println("静态成员方法~~~");
    }
    
    public static void main(String[] args) {
        //普通成员方法必须通过对象来调用
        Test01 t1 = new Test01();
        t1.print1();
        //可以直接调用静态方法
        print2();
    }
}
Copier après la connexion

Tutoriel recommandé : Tutoriel d'introduction à Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal