인스턴스 멤버란 객체를 생성한 후 사용할 수 있는 필드와 메소드를 말하는데, 이들을 각각 인스턴스 필드, 인스턴스 메소드라고 부름.
인스턴스 필드와 메서드는 객체에 소속된 멤버이기 때문에 객체 없이는 사용할 수 없음.
package sec05.exam01;
public class Car {
String model;
int speed;
// 생성자
Car(String model) {
this.model = model;
}
// 메서드
void setSpeed(int speed) {
this.speed = speed;
}
void run() {
for (int i=0;i<=50;i+=10) {
this.setSpeed(i);
System.out.println(this.model + "가 달립니다.(시속 : " + this.speed + "km/h");
}
}
}
package sec05.exam01;
public class CarExample {
public static void main(String[] args) {
Car myCar = new Car("포르쉐");
Car yourCar = new Car("벤츠");
myCar.run();
yourCar.run();
}
}
정적은 고정된이란 의미. 정적 멤버는 클래스에 고정된 멤버로서 객체를 생성하지 않고 사용할 수 있는 메소드를 말함. 이들을 각각 정적 필드 정적 메서드라고 함.
package sec05.exam02;
public class Calculator {
static double pi = 3.14159;
static int plus(int x, int y) {
return x + y;
}
static int minus(int x, int y) {
return x - y;
}
}
package sec05.exam02;
public class CalculatorExample {
public static void main(String[] args) {
double result = 10 * 10 * Calculator.pi;
int result2 = Calculator.plus(10, 5);
int result3 = Calculator.minus(10, 5);
System.out.println("result = " + result);
System.out.println("result2 = " + result2);
System.out.println("result3 = " + result3);
}
}
오~~ 이해가 잘 되는 글 입니다