728x90
반응형
- 인스턴스 변수
- 클래스 내부에 선언되지만 메소드 밖에서 선언되며 객체가 생성될 때 메모리에 할당
- 각 객체마다 별도로 존재하며, 객체의 상태를 나타내는데 사용
- 자동차 예제에서 "color", "model"임
- 멤버 변수
- 클래스 내부에서 선언되며, 인스턴스 변수와 클래스 변수(정적 변수)를 모두 포함함
- 인스턴스 변수는 각 객체마다 존재하는 반면, 클래스 변수는 클래스 단위 하나로 모든 객체가 공유함
- 지역 변수
- 메소드 내부에서 선언되며, 메소드가 실행될 때 생성되고 메소드가 종료될 때 소멸함
- 선언된 메소드 내부에서만 사용 가능
- 파라미터
- 메소드 선언에 사용되는 변수를 말함
- 자동차 예제에서 "color", "model"임
- 전역 변수
- 프로그램 어디에서나 접근 가능한 변수
public class Student {
// 멤버 변수 (인스턴스 변수)
private String name; // 학생의 이름
private int score; // 학생의 점수
// 멤버 변수 (클래스 변수, 전역 변수와 비슷한 개념)
private static int totalScore = 0; // 모든 학생의 점수 합
private static int studentCount = 0; // 학생 수
// 생성자
public Student(String name, int score) { // 파라미터
this.name = name; // 인스턴스 변수에 파라미터 값을 저장
this.score = score; // 인스턴스 변수에 파라미터 값을 저장
totalScore += score; // 클래스 변수에 점수 더하기
studentCount++; // 클래스 변수 학생 수 증가
}
// 평균 점수 계산 메서드
public static float calculateAverage() {
return (float)totalScore / studentCount; // 평균 점수 계산하여 리턴
}
public static void main(String[] args) {
// 객체 생성
Student student1 = new Student("철수", 85);
Student student2 = new Student("영희", 90);
Student student3 = new Student("민수", 80);
// 평균 점수 출력
System.out.println("학생들의 평균 점수: " + Student.calculateAverage());
}
}728x90
반응형
'이론 > Java' 카테고리의 다른 글
| Java 배열 (0) | 2025.07.06 |
|---|---|
| Java 형변환 (0) | 2025.07.06 |
| OOP) 클래스와 객체 (0) | 2024.01.02 |
| Java) 변수와 데이터 타입, 연산자 (0) | 2023.12.27 |
| Java) 입출력/ 더 빠른 입출력 (0) | 2023.08.29 |