O décimo dever de casa de JAVA "Capítulo 12 Atributos estáticos e dever de casa de métodos - Definição básica e uso de classes + estático"

URL do sistema CG: http://211.81.175.89

modificador estático

  • variável estática:

    A palavra-chave static é usada para declarar variáveis ​​estáticas independentes de objetos.Não importa quantos objetos uma classe instancia, há apenas uma cópia de suas variáveis ​​estáticas. As variáveis ​​estáticas também são conhecidas como variáveis ​​de classe. As variáveis ​​locais não podem ser declaradas como variáveis ​​estáticas.

  • método estático:

    A palavra-chave static é usada para declarar um método estático independente do objeto. Métodos estáticos não podem usar variáveis ​​não estáticas da classe. Os métodos estáticos obtêm dados da lista de parâmetros e, em seguida, calculam esses dados.

Variáveis ​​estáticas também são chamadas de variáveis ​​estáticas. A diferença entre variáveis ​​estáticas e variáveis ​​não estáticas é que as variáveis ​​estáticas são compartilhadas por todos os objetos e têm apenas uma cópia na memória. Elas são inicializadas se e somente quando a classe é carregada pela primeira vez . As variáveis ​​não estáticas pertencem ao objeto e são inicializadas quando o objeto é criado . Existem várias cópias e as cópias pertencentes a cada objeto não afetam umas às outras.
A ordem de inicialização de variáveis ​​de membros estáticos é inicializada na ordem em que são definidas.
 

Com base na definição da classe retângulo Rect na "atribuição de classe e objeto" anterior, adicione dois métodos estáticos:

public static double getArea(duplo x,duplo y)

public static double getPerimeter(double x,double y)。

Esses dois métodos calculam a área e o perímetro de um retângulo, respectivamente, com base nos valores dos parâmetros recebidos.

O código do método principal é o seguinte, preste atenção, não modifique o código do método principal, caso contrário, os pontos de desconto:


import java.util.Scanner;

class Rect {
    //类的属性
    double side1;
    double side2;

    //方法
    public static double getArea(double x,double y) {  //计算矩形的面积
        double area;  //定义面积变量
        area = x * y;
        return area;  //返回面积

    }

    public static double getPerimeter(double x,double y) {  //计算矩形的周长
        double per;  //定义周长变量
        per = (x + y) * 2;
        return per;  //返回周长
    }
    public double getArea(){  //计算矩形的面积
        double area;  //定义面积变量
        area = side1*side2;
        return area;  //返回面积

    }
    public double getPerimeter(){  //计算矩形的周长
        double per;  //定义周长变量
        per = (side1+side2) * 2;
        return per;  //返回周长
    }

}
public class one {
    public static void main(String[] args)
    {
        Scanner sin =new Scanner(System.in);
        Rect r = new Rect();
        r.side1 = sin.nextDouble();
        r.side2 = sin.nextDouble();

        System.out.println("area is:"+r.getArea());
        System.out.println("perimeter is:"+r.getPerimeter());
        System.out.println(Rect.getArea(3, 5));
        System.out.println(Rect.getPerimeter(3, 5));
    }
}

Acho que você gosta

Origin blog.csdn.net/qq_25887493/article/details/123982421
Recomendado
Clasificación