본문 바로가기
728x90
반응형

Java/기초21

[java 기초] 생성자 생성자의 역할 = 객체를 생성하는 시점에서 필드를 다양하게 초기화할 수 있다. 생성자의 특징 - 생성자는 메소드 - 생성자 이름은 클래스 이름과 같다. - 생성자의 반환타입은 없다. - 생성자는 new 연산자와 함께 사용되며, 객체를 생성할 때 호출한다. - 생성자도 오버로딩할 수 있다 (오버로딩 = 메서드 이름은 같지만, 메서드 시그니처가 다른 메서드를 정의하는 것, 여기서 메서드 시그니처는 매개변수의 개수, 매개변수의 타입과 순서등을 말함) - 생성자의 목적은 객체 초기화 예제) 두개의 생성자를 가진 circle 클래스 디폴트 생성자 - 매개변수 없고 아무 작업 없이 단순 리턴하는 생성자 - 모든 클래스는 최소한 하나의 생성자가 있음 - 만약 생성자를 선언하지 않으면 컴파일러가 자동으로 디폴트 생성자.. 2021. 6. 24.
[java기초] 객체 생성과 참조변수 / this 예를 들어 Circle 클래스가 있다면, 클래스 이름인 Circle 은 변수의 타입 , 변수인 c는 참조변수 또는 참조타입변수라고 한다. new Circle();에서 Circle()은 생성자이다. this는 생성자에 의해 생성된 객체 자신이다. 멤버필드(side) 랑 매개변수(s)의 변수이름이 다른걸 this를 사용하면 이렇게 만들어 줄 수 있다. 이처럼 this는 생성자/메소드의 매개변수의 이름이 필드와 동일한 경우, 인스턴스 멤버인 필드임을 명시하고자 할때 사용한다. 원의 넓이를 계산하는 클래스를 작성해보았다 findArea 메서드에서 return 3.14*radius*radius 를 해도 무방하지만 필드임을 명시하고자 this.radius로 사용해 줄 수 있다. - 객체 자신에 대한 레퍼런스 - 컴.. 2021. 6. 24.
[java기초] static 인스턴스가 모두 공유하는 값을 static변수로 선언한다. static변수에 대해 예제를 통해 살펴보자. 예제) 학생이 한명씩 생성될 때 마다 학번을 부여하는데, 학번은 1씩 증가하는 클래스를 만들어보자. 예제와 같은경우, 기준이 되는 학번은 static으로 선언해 주는 것이 좋다. (기준이 되는 학번을 인스턴스들이 모두 공유) static 인스턴스 - 데이터영역(또는 정적영역)에 따로 존재 cf.데이터 영역에는 상수,리터럴,static이 저장된다. - 전체 프로그램이 메모리에 로드될 때 할당받음(new 때문에 할당 x) - 인스턴스의 생성과 관계 없이 클래스 이름으로 직접 참조함. - 클래스변수라고 함. - 객체를 생성하지 않고 실행할 수 있음 -객체마다 생기는 것이 아님 - this사용 불가 (객체를.. 2021. 6. 21.
[java 기초] 용어정리 & 기초자료형과 참조자료형 객체 객체지향 프로그램의 대상,생성된 인스턴스 클래스 객체를 프로그래밍하기 위해 코드로 만든 상태 인스턴스 클래스가 메모리에 생성된 상태 멤버 변수 클래스의 속성, 특성 메서드 멤버 변수를 이용하여 클래스의 기능을 구현 참조 변수 메모리에 생성된 인스턴스를 가리키는 변수 참조 값 생성된 인스턴스의 메모리 주소 값 java에서 변수는 기초변수와 참조변수로 구분한다. 예를 들어 학생의 성적을 입력하는 프로그램을 만들고자 한다. 학생 class와 과목 class를 구분해서 프로그래밍을 할 것이다. 위의 사진 처럼 변수 선언 시, int studentID에서 int는 정수로 변수를 선언하는 기본 자료형이다. Subject korea에서 Subject는 클래스형으로 변수를 선언하는 참조자료형이다. 기본 자료형 참.. 2021. 6. 20.
728x90
반응형