9월 14일 자바프로그래밍 기초 수업 - 클래스

 package 를 e_oop 라고 만들었다. 

그리고 그 밑에 class를 다시 만들었다 이름은 : UserDefinedDataType 



오늘의 주제 : 클래스를 배울 것이다. 


사용자 정의 데이터 타입 

- 데이터의 최종 진화 형태이다. ( 변수 -> 배열 -> 클래스 )

배열의 불편함으로부터 클래스가 생성이 된 것이다. 배열은 같은 타입의 데이터만 묶을 수가 있다. 이것을 해결하기 위해 클래스가 생성 된 것이다. 


- 서로 다른 타입의 데이터를 묶어서 사용하는 것이다. 

- 변수와 메서드로 구성할 수 있다. 



변수 ( 1개의 변수에는 1개의 데이터만 저장이 가능했다. ) 


int kor; 

int eng; 

int math; 

int sum ; 

double avg ; 

String name; 


// -> 변수만 사용할때는 양이 많아진다. 

배열은 같은 타입의 데이터만 여러개 저장이 가능했다. 


int [] scores; 

int sum2 ; 

double avg2; 

String name2 ; 

---> class 로 만들어 보자 


class Student{ 


int kor ; 

int eng; 

int math; 

int sum ; 

double avg; 

String name; 

int rank ; 

int subsum;

int subavg; 








1. main  메소드가 없는 class를 하나 만들기 


package e_oop.score;


public class Student {

int kor; 

int eng; 

int math; 

int sum; 

double avg; 

String name; 

int rank ; 

int subsum;

int subavg; 



2. 선언하기

-> Student student ; 

(int 는 뭐 double은 뭐 이런식으로 선언한것처럼 ) 

student = new Studnet () ; 객체생성 -> 설계도에 있는 애를 메모리에 올려서 사용하게 하는것 ( 인스턴스화) 

Student 라는 타입의 student => class를 가져오는 것 

참조형 타입의 변수이다. 

기본값은 NULL 


3. 사용하기 


student.kor = 80; 

참조연산자인 점을 사용해줌. 점을 찍으면 우리가 만들어준 변수들이 나옴 (class 안에) kor 이라는 변수에 값을 저장한 것. 

student.eng = 90; 

student.math = 60 ; 

student.sum = student.kor + student.eng + student.math ;

student.avg = student.sum /3.0; 

studetn.name = " 홍길동 " ; 


4. 값을 읽어보고 싶다. 


System.out.println(student.name ) ; 

System.out.println(student.avg) ; 



하위 패키지 만들기 : 점을 찍으면 됨 . 



















댓글