객체지향 개념_Class
2023. 12. 29. 14:56ㆍ개발공부/Java
728x90
반응형
학생 성적 데이터를 변수에 저장 -> 출력
public class ClassStart {
public static void main(String[] args) {
String[] studentNames = {"학생1", "학생2"};
int[] studentAges = {15, 16};
int[] studentGrades = {90, 80};
for(int i = 0; i < studentNames.length; i++){
System.out.println("이름: " + studentNames[i] + "나이: " + studentAges[i] + "성적: " + studentGrades[i]);
}
}
}
위처럼 배열로 데이터를 정리할 때 문제점.
1. 데이터를 추가할 때 하나씩 일일이 추가해주어야 함.
예. 학생3의 정보를 넣을 때, studentAges 배열, studentGrades 배열에 각각 데이터를 추가해야 하는 불편함.
2. 지우거나 수정할 때 실수할 가능성이 있음.
- 학생의 정보를 그룹으로 묶어 다루기 쉽게 만들어주어야 함.
- 이때 클래스를 사용할 수 있음.
클래스(Class)
public class Student {
String name;
int age;
int grade;
}
Student라는 이름의 클래스 생성.
- Student라는 유형/타입의 객체를 만들기 위한 틀
- 실질적으로 존재하는 객체는 아님.
- 객체를 만들기 위한 설계도 (플라톤 이데아와 비슷하게 이해할 수도 있을 것 같다)
public static void main(String[] args) {
Student student1;
student1 = new Student();
student1.name = "학생1";
student1.age = 15;
student1.grade = 90;
위처럼 실행클래스를 생성하고 미리 만들어둔 클래스를 활용해 객체를 생성할 수 있음.
Student -> 클래스 타입
student1 -> 객체의 주소를 참조하는 참조변수
객체사용
student1이 참조하는 객체의 실질적인 내용(name, age, grade)을 채워주어야 함
참조변수 + . + 멤버변수 = 내용
의 형태로 초기화
"참조변수가 참조하고 있는 주소로 가서 멤버변수의 내용을 ~~~라고 채우시오." 라고 읽을 수 있음.
메서드가 있다면
참조변수 + . + 메서드();
의 형태가 될 것
728x90
반응형
'개발공부 > Java' 카테고리의 다른 글
[Java 에러] IllegalArgumentException (0) | 2024.01.23 |
---|---|
[자바 Java] 배열 오름차순 정렬, 최대값 활용 (0) | 2024.01.16 |
객체지향 개념_접근제어자의 필요성 (0) | 2023.12.30 |
객체지향 개념_생성자의 필요성 (2) | 2023.12.30 |