본문 바로가기

백엔드33

JAVA 상속 상속(Inheritance) 상속이라고 하면 내가 알고있는 얕은 지식으로는 부모가 자식에게 물려주는 재산등을 말하는데 JAVA에서의 상속이라는 개념도 이와 비슷하거나 같다고 볼 수 있다. 다만 다른점은 자식이 상속받고 싶은 부모를 선택한다는 점이 다르다 상속이란 기존 클래스에 기능 추가 및 재정의하여 새로운 클래스를 정의한다 - 부모 클래스 : 상속 대상이 되는 기존 클래스 (= 상위클래스, 기초클래스) - 자식 클래스 : 기존 클래스를 상속하는 클래스 (= 하위 클래스, 파생 클래스) 자식클래스가 상속하고자 하는 부모클래스의 필드와 메소드가 상속이 된다.(생성자와 초기화 블록은 상속되지 않는다.) 상속이 이루어질 때에는 다중 상속이 불가능하다.(여러 부모의 클래스를 상속받는 것이 불가능!) 접근제어자 .. 2023. 3. 20.
JAVA 클래스와 객체 #2 오버로딩 한 클래스 내에서 사용하려는 이름과 이미 같은 이름의 메소드가 있더라도 매개변수의 갯수나 타입이 다르면 같은 이름을 사용해서 메소드를 정의할 수 있다. 오버로딩의 조건! - 메소드의 이름이 같아야 한다. - 매개변수의 개수 또는 타입이 달라야 한다. (리턴값만 다른것은 오버로딩이 되지 않는다!) public class 클래스명 { 클래스명() {} 클래스명(String name, String type) { 구현내용; } } 생성자를 오버로딩하면 처음 생성자는 default로 존재하고 아래 생성자는 어떤 데이터를 넣어서 초기화 하고싶을 때 추가로 만들면 오버로딩이 되는 것이다. 접근 제어자 클래스의 변수나 메소드의 접근에 제한을 두는 키워드를 말한다. 접근 제어자 종류 - private : 해당 .. 2023. 3. 19.
JAVA 클래스와 객체 #1 클래스(Class) JAVA에서 클래스(Class)란 객체를 정의하는 설계도의 의미를 가지고있으며 어떠한 작업을 하기위한 레시피라고 생각할 수 있다. 클래스는 객체의 상태를 나타내는 필드(field)와 객체의 행동을 나타내는 메소드(method)로 구성이 되며 여기서 필드(field)란 클래스에 포함된 변수(variable)를 의미한다. 그리고 메소드(method)란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있다고 한다. 객체(Object), 인스턴스(Instance) 객체 지향 프로그래밍(OOP, Object-Oriented Programming)에서 데이터들을 객체(Objcet)로 표현을 하며 JAVA에서는 이런 객체를 중심으로 프로그래밍이 이루어진다. 이러한 객체의 상태(state.. 2023. 3. 18.
JAVA 다차원 배열 다차원 배열이란? 다차원이란 지금까지 사용했던 일차원 배열인 아래 코드를 포함한 배열들을 말한다. int[] array1 = {1, 2, 3, 4, 5}; 다차원 배열을 이용해 배열하나를 만들면 int[][] array2 = {{1, 2, 3}, {4, 5, 6}}; int[][][] array3 = {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}}; 첫번째 배열은 이차원 배열로 대괄호를 두개 사용하여 만든다. 중괄호 안에 중괄호가 들어 있는 형태로 만들어진다. 처음 자료형int를만들고 2개의 대괄호로 몇차원배열을 만들 것인지 설정해 준 다음 변수명을 작성하고 대입연산자로 초기화 자료를 작성해 주면 된다. 만약 초기화 자료를 사용하지 않고 만들고 싶다면 int[][] array2 = ne.. 2023. 3. 17.