Variables d'instance, variables statiques, méthodes d'instance et méthodes statiques, JavaSE

1. Introduction

La variable statique numberOfObjects compte le nombre d'objets Circle créés. Lorsque le premier objet de la classe est créé, la valeur de numberOfObjects est 1. Lorsque le deuxième objet est créé, la valeur de numberOfObjects est 2. La classe Circle définit la variable d'instance radius et la variable statique numberOfObjects, ainsi que la méthode d'instance getArea et la méthode statique getNumberOfObjects.
Les méthodes d'instance (par exemple: getAreaO) et les données d'instance (par exemple: radius) appartiennent à l'instance, elles peuvent donc être utilisées après la création de l'instance. Ils sont accessibles en référençant des variables. Les méthodes statiques (par exemple: getNumberOfObjectsO) et les données statiques (par exemple: numberOfObjects) peuvent être appelées en référençant des variables ou leurs noms de classe

2. Code

Classe d'implémentation

package com.zhuo.demo;

import com.zhuo.base.Circle;

public class CircleWithOfMenbers {
    
    
    double radius;
    static int numberOfObjects;
    CircleWithOfMenbers() {
    
    
        radius = 1;
        numberOfObjects++;
    }
    CircleWithOfMenbers(double newradius) {
    
    
        radius = newradius;
        numberOfObjects++;
    }
    int getNumberOfObject() {
    
    
        return numberOfObjects;
    }
    double getArea() {
    
    
        return radius * radius * Math.PI;
    }
}

Classe de test

package com.zhuo.demo;

public class TestCircleWithOfMenbers {
    
    
    public static void main(String[] args) {
    
    
        System.out.println("创建对象之前");
        System.out.println("圆对象的数量为: " + CircleWithOfMenbers.numberOfObjects);
        CircleWithOfMenbers c1 = new CircleWithOfMenbers();
        System.out.println("创建对象c1之后");
        System.out.println("c1半径为" +  c1.radius + ",面积为: " + c1.getArea() + ",圆的对象数为: " + c1.getNumberOfObject());
        CircleWithOfMenbers c2 = new CircleWithOfMenbers(5);
        c1.radius = 9;
        System.out.println("创建对象c2和修改c1之后");
        System.out.println("c1半径为" +  c1.radius + ",面积为: " + c1.getArea() + ",圆的对象数为: " + c1.getNumberOfObject());
        System.out.println("c2半径为" +  c2.radius + ",面积为: " + c2.getArea() + ",圆的对象数为: " + c2.getNumberOfObject());
    }
}

3. Affichage des résultats

创建对象之前
圆对象的数量为: 0
创建对象c1之后
c1半径为1.0,面积为: 3.141592653589793,圆的对象数为: 1
创建对象c2和修改c1之后
c1半径为9.0,面积为: 254.46900494077323,圆的对象数为: 2
c2半径为5.0,面积为: 78.53981633974483,圆的对象数为: 2

Process finished with exit code 0

Je suppose que tu aimes

Origine blog.csdn.net/weixin_42768634/article/details/113817229
conseillé
Classement