package kr.s07.object;
public class Student04 {
//멤버 변수
String name;
int korean;
int math;
int english;
int sum;
double avg;
public static void main(String[] args) {
//객체 선언 및 생성
Student04 student = new Student04();
student.name = "김유신";
student.korean = 98;
student.math = 95;
student.english = 97;
//총점 구하기
student.sum = student.korean + student.math + student.english;
//평균 구하기
student.avg = student.sum / 3.0;
//객체의 멤버 변수의 값 출력
System.out.println("이름: " + student.name);
System.out.println("국어: " + student.korean);
System.out.println("수학: " + student.math);
System.out.println("영어: " + student.english);
System.out.println("총점: " + student.sum);
System.out.printf("평균: %.2f%n", student.avg);
}
}
객체의 멤버 변수를 활용 데이터를 저장, 성적 처리하는 프로그램을 만들 경우, 다른 자료형의 데이터는 넣을 수 없어 과목명을 저장하는 배열과 점수를 저장하는 배열을 따로 만들어주어야 하는 배열과 달리 객체 안에 모든 자료형의 데이터를 다 저장할 수 있어 편리하다는 장점이 있다.
참고) 배열을 활용한 성적 프로그램 만들기
객체의 멤버 변수에 과목 점수 외에도 학생의 이름, 총점, 평균을 저장할 변수까지 모두 선언한다.
Student04 student = new Student04(); 객체를 선언 및 생성한다.
객체의 하위 구성원인 멤버 변수들에 접근해 값을 저장한다.
ex. Student.name = "김유신";
그렇게 저장한 하위 구성원끼리 연산하여 다른 구성원에 저장해 주는 것도 가능하다.
ex. student.sum = student.korean + student.math + student.english;
단, 이렇게 멤버 변수끼리 연산을 할 때에도 자료형을 일치시켜주는 것은 필수다. 따라서 정수형 데이터를 연산해 실수형 변수에 저장하고자 할 때에는 한 데이터를 실수형으로 변환해 주어야 한다.
ex. student.avg = student.sum / 3.0;