1 객체?
존재(베타적, 독립적인 공간을 차지)하는 사물(object)
2 객체 구조
속성(Attribute) : 객체만의 고유한 Data -> (멤버)변수를 통해 저장
기능(Function) : 객체가 수행할 수 있는 Action -> (멤버)함수를 통해 구현
3 객체 지향
현식 객체의 정보(속성/기능) 중에 필요한 일부만 추출(추상화) 하여 프로그램에 적재하기 위해 고안된 문법체계
4 클래스(자료형)
- 동일한 종류의 객체에 필요한 메모리공간을 제공하기 위해 선언된 자료형
- 클래스는 선언하기 전에 기본적으로 메모리 공간을 차지하지 않는다
- 클래스 자료형에 의해 객체가 정의되는 순간 클래스에서 선언한 속성과 기능대로 공간이 형성된다
5 자바의 메모리 영역
1) 스택영역 : {} 내에서 생성되는 공간(int,double....)
2) 클래스(메서드)영역 : 공유메모리 영역(생성자, 일반메서드, static메서드, static변수)
3) 힙영역 : 객체 저장 영역(new 예약어 사용 시 할당)
6 코드 해석
Scanner sc=new Scanner(System.in);
new : 힙영역에 객체 저장
Scanner() : 객체에 필요한 초기 값을 부여하기 위한 생성자메서드
Scanner sc : Scanner라는 클래스 자료형으로 정의된 참조변수 sc
힙영역에 Scanner 객체를 생성한 뒤 객체의 주소를 sc이름의 참조변수에 저장
Person 클래스의 속성(멤버변수)
Person 클래스의 기능(멤버함수, 멤버메서드)
Main 클래스
Scanner를 사용하여 사용자로부터 이름, 나이, 키, 체중을 입력받고, 입력된 값을 사용하여 Person객체를 생성한다.
생성된 객체의 talk(), walk(), ShowInfo() 메서드를 호출하여 해당 객체의 동작과 속성 정보를 출력
'java' 카테고리의 다른 글
Java 08(오버로딩, 오버라이딩) (0) | 2023.06.22 |
---|---|
Java 07(지역변수, 멤버변수) (0) | 2023.06.18 |
Java 05(While, For) (0) | 2023.06.14 |
Java 04(IF) 기본문제 (0) | 2023.06.13 |
Java 03(Basic) (0) | 2023.06.13 |