SMALL Java267 상속) super 키워드, super() 메소드, protected 접근 제한자 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. super 키워드와 super() 메소드에 대해 알아보기 전, 상속을 하는 이유에 대해서 먼저 짚어보겠습니다. 데스크탑, 스마트폰, tv에 대한 정보를 갖고 있는 VO class를 만들어보았습니다. Desktop class public class Desktop { private String brand; private String productCode; private String productName; private int price; private String os; private String monitor; private String keyboard; private String mouse.. 2022. 3. 22. 상속) 메소드 오버라이딩 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 메소드 오버라이딩(Overriding, Override)이란? - 부모 클래스에게 상속받은 메소드와 동일한 이름의 메소드를 재정의하는 것 - 부모의 메소드를 자신이 만든 메소드로 덮어쓰는 개념 - 부모 메소드가 던지는 예외를 제거하거나 개수를 줄일 수 있음 - 부모 메소드를 오버라이드한 경우에도, 해당 메소드 안에서 super 키워드로 호출 가능 메소드 오버라이딩 조건 ① 부모 클래스의 메소드와 시그니처 및 리턴 타입 동일 ② 부모 클래스의 메소드보다 접근 지정자의 범위가 같거나 넓어야함 (private → default → protected → public) 단, private은 직접 접.. 2022. 3. 21. 상속) 최상위 클래스 Object, toString(), equals(Object obj), hashCode(), clone() 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 최상위 클래스 Object Object 클래스는 자바의 최상위 클래스로, 자바의 모든 클래스들은 Object 클래스를 상속 받습니다. class Parent { String name; int age; public void say() { System.out.println("부모클래스"); } public String information() { return "name = " + name + ", age = " + age; } } class Child extends Parent { String game = "LOL"; public void doGame() { System.out.println(.. 2022. 3. 21. 상속) 상속의 특징, 생성자 상속 여부 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 상속의 특징 ① 부모 필드/메소드를 자식 클래스 선언 없이 사용 가능 ② 부모 클래스의 생성자와 초기화 블럭은 상속 불가 (자식 클래스에서 직접 선언하여 사용) ③ 부모의 private 멤버(필드,메소드)는 상속은 되지만 직접 접근이 불가!! → private 필드의 setting은 부모 생성자를 통해 호출 → public setter를 사용 ④ 모든 클래스는 Object클래스의 후손이므로, Object 메소드를 사용 혹은 재작성할 수 있음 생성자의 상속 여부 생성자는 자식 클래스로 상속이 불가합니다. 간단한 예제로 그 이유를 알아 보겠습니다. class A { //기본생성자 A() { }.. 2022. 3. 21. 객체 지향 3대 원칙) 상속에 대해서, 상속 시 메모리 구조 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 상속이란? - 부모 클래스의 멤버(필드, 메소드, 이너클래스)를 내려받아 자식 클래스 내부에 포함 부모 클래스는 자식 클래스의 공통적 특징을 모아 구성한 클래스 상속의 장점 ① 코드의 중복성 제거 ② 다형적 표현 가능 상속 문법 class 자식 클래스 extends 부모 클래스 { //... } 단, 자바의 클래스는 다중 상속이 불가!!! (부모 클래스가 2개 이상일 때를 의미) 그 이유는, 만일 class A와 B 모두 data라는 필드를 포함하고 있을 때 class C가 상속을 하면 C 또한 data 필드를 갖고 있을 것입니다. 그럴 때 A의 data 값이 3이고, B의 data 값이 .. 2022. 3. 21. 배열) 객체 배열, VO class 설계 안녕하세요, 코린이의 코딩 학습기 채니 입니다. 개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다. 객체 배열을 만들기 전, VO class를 생성해보겠습니다. ☞ VO class (Value Object class) - 데이터를 담기 위한 클래스 - private 필드 (캡슐화) - public getter/setter (캡슐화) - 기본 생성자, 파라미터 생성자 - 모든 필드 정보를 확인할 수 있는 메소드 DTO (Data Transfer Object), DO (Domain Object), Entity, bean 이라고도 함 이름, 나이, 결혼여부 정보를 갖고 있는 VO class 생성 public class Person { //filed private String name; priv.. 2022. 3. 18. 이전 1 ··· 28 29 30 31 32 33 34 ··· 45 다음 LIST