본문 바로가기
IT ▶/Java & Web

[자바 프로그래밍 기초] 자바 객체지향 클래스(Class), 메소드(Method) 개념

by Jordan_ 2020. 3. 14.
300x250

 

 

 

 

 

1> 자바 객체지향 프로그래밍 (OOP)

 

 

 

- 객체 (Object) : 자신의 속성을 가지고 다른 것과 식별이 가능한 것

 

 

 

객체

자바

속성

필드

동작

메소드

 

 

-    객체 간의 관계가 형성 (상위, 하위) : 메소드 호출 ->결과 리턴 방식

 

 

 

 

 

2> 객체 지향 프로그래밍 특징

 

 

 

- 캡슐화, 상속, 다형성

 

 

 

 

 

 

3> 클래스 : 객체를 생성하기 위한 필드, 메소드 정의

 

 

- 인스턴스 : 클래스로부터 만들어진 객체

 

- 클래스 선언

 

 

public class 클래스명 { 

}

 

 

 

 

 

4> 객체 생성 (new 연산자)

 

 

- 클래스 (Class)  생성하면 new 연산자 해당 객체를 생성하여야 사용 가능

 

- 메모리(heap) 영역에 객체 생성 후, 해당 객체 주소 리턴

 

 

- 객체 생성 방법

 

 

1]

 

클래스 변수;

 

변수 = new 클래스();

 

 

예시)

Team a1;
a1 = new  Team(); 

 

2]

 

클래스 변수 = new 클래스();

 

 

예시)

 

Team a1 = new Team();

 

 

 

 

5> 생성자 오버로딩

 

 

 

동일한 클래스 생성자를 매개변수를 다르게 하여 여러 개로  생성하여 new 연산자에서 호출 할 때  파라미터와 타입 수에 의해 호출될 생성자가 호출된다.

 

 

 

 

 

 

# 메소드 (Method) : 객체 동작에 해당되는 블록

 

 

 

1> 메소드 선언

 

 

리턴타입 메소드명 (매개변수,…..) 
{ 

실행 코드 ~ 

}; 

 

 

- void test() { ~ } : 리턴 값이 없는 메소드

 

- Map test(int a, int b) { ~ } : Map 형태 리턴 값이 있는 메소드

 

 

 

 

 

# import 문

 

 

- 동일한 패키지가 아닌 다른 패키지에 있는 클래스를 사용하기 위해 사용

 

- Import 문은 패키지 선언과 클래스 선언 사이 작성

 

 

예시>

 

Import com.test.service;
(또는 import com.test.*; ) // test 패키지 아래 모든 클래스 포함 

 

 

- Import문 추가 단축키 : Ctrl + Shift + O

 

 

 

 

 

# 어노테이션 (Annotation)

 

 

- 메타데이터 : 컴파일, 실행 과정에서 코드를 어떻게 컴파일하고 처리할지 정보

 

- 컴파일러 코드 문법 에러체크 (@Override)

 

- 소프트웨어 개발 툴이 빌드나 배치 시 코드 자동생성 정보 제공

 

- 실행 시 특정 기능 실행 역할

 

 

 

 

 

# 상속 (Inheritance) : 부모(상위) 클래스의 필드를 자식(하위) 클래스에 전달

 

 

 

- B클래스가 A클래스를 상속 (B에서 A클래스에서 선언한 필드, 메소드를 갖다 쓸 수 있다.)

 

 

Public class B extends A { 

}

 

 

- 클래스 A를 상속하면 A의 필드, 메소드만 수정하면 된다. (유지보수 장점)

 

- 상속할 부모 클래스는 여러 개는 불가하고, 1만 상속 가능하다.

 

 

 

 

1> 부모 클래스 생성자

 

 

 

- super() 선언을 통해 부모의 기본 생성자 호출

 

- super() 호출시에는 부모 클래스의 매개값 타입과 일치하는 부모 생성자 호출 가능

 

 


Public 자식클래스(){ 

super(); 

}

 

 

예시>

 

 

* Parent.java (부모 클래스)

 


public class Parent { 

public String name;
public String address; 

public Test(String name, String address) { 

this.name = ‘Kim’;
this.address = ‘Seoul’; 

}
}

 

 

* Kids.java (자식 클래스)

 


public class Kids extends Parent { 

public int num; 
public Kids(String name, String address, int num) { 

super(name, address);     // 부모 클래스 생성자 호출this.num = num; 

}
}

 

 

 

 

아래는 자바 프로그래밍 기초 관련하여 다른 내용 참고하시기 바랍니다.!!!

 

 

 

 

[IT/Java] - [자바 프로그래밍 기초] Java 프로그램 개발이란?

 

[자바 프로그래밍 기초] Java 프로그램 개발이란?

1> 자바 프로그램 개발 순서 .java 소스 파일 작성 ->컴파일러(javac.exe) 통해 바이트 코드 파일(.class) 생성 -> JVM 구동 명령어 (java.exe) 실행 2> 자바 프로그램 구성 : 클래스, 메소드 (main 메소드는 기본..

lovefor-you.tistory.com

[IT/Java] - [Java] 자바 개념 공부 (변수, 자료형, 반복문(구구단 예시))

[IT/Java] - [Java] 자바 배열 개념 (Java Array Concept)

[IT/Java] - [Java] HashMap 개념 (상속, super 클래스)

[IT/Java] - [Java] 인코딩, 디코딩 개념 (유니코드, EUC-KR, UTF-8)

 

 

 

감사합니다~!

 

 

 

 

 

 

728x90
반응형

Buy Me A Coffee
방문해주셔서 감사합니다! 커피 한잔 기부로 더 좋은 글, 정보 공유하겠습니다. Thank you for visiting! I will share better information and information with a cup of coffee.