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));
}
}