본문 바로가기

Zero Base 백엔드 스쿨 6기

(13)
B BE 6th - 자바 공부 #7-1 상속-다형성 + 문제 1. [다형성] : 한 객체가 여러 가지 타입을 가질 수 있는 것. 부모 클래스 타입의 참조 변수로 자식클래스 인스턴스 참조. EX) class Person{} class Student extends Person {} Person p1 = new Student (); // 가능 Student s1 = new Person (); // 불가능 : 부모에서 나오지만 자식의 형태는 불가. 클래스명1 변수명 = new 클래스명2 변수명.메소드 클래스2에 선언된 메소드로 출력되지만 해당 메소드는 클래스1과 동일한 메소드여야만 한다. [불가항목] 1. 부모로부터 출력되지만 자식타입의 형태. 2. 같은 부모를 상속했어도 자식끼리 호출 코드 사용 예시 )) class Person { public void print() ..
ZB BE 6th - 자바 공부 #7. 상속 [상속] 1. 상속 : 기존 클래스에 기능 추가 및 재정의하여 새로운 클래스를 정의 - 부모 클래스 : 상속 대상이 되는 기존 클래스 = 상위 클래스, 기초 클래스 - 자식 클래스 : 기존 클래스를 상속하는 클래스 = 하위 클래스, 파생 클래스 부모 클래스의 필드와 메소드가 상속됨. = 생성자, 초기화 블록은 상속되지 않음. 다중 상속은 불가능 private, default 멤버는 자식 클래스에서 접근 불가 class 자식 클래스명 extends 부모 클래스명 { 필드; 메소; } 2. super, super() 2-1 super : 부모 클래스와 자식 클래스의 멤버 이름이 같을때 구분하는 키워드 2-2 super() : 부모 클래스의 생성자 호출 Ex) this.name; : 본인 클래스에서 선언한 n..
ZB BE 6th - 자바 공부 #6-2. 클래스와 객체 클래스와 객체_2 1. 오버로딩 : 한 클래스 내에서 같은 이름의 메소드를 여러 개 정의 오버로딩 조건 A. 메소드의 이름이 같아야함. B. 매개변수의 개수 또는 타입이 달라야함. (리턴 타입의 차이로는 오버로딩이 되지 않음) ex) public class 클래스명 { 클래스명() {} 클래스명 (String name, String type) [ 구현 내용; } } 2. 접근제어자 클래스의 변수나 메소드의 접근에 제한을 두는 키워드 접근제어자 종류 A. private : 해당 클래스에만 접근 가능 >> 동일 패키지 [일반클래스, 상속받은 자식클래스], 외부 패키지[일반클래스, 자식클래스] 모두 접근 불가. B. public : 어디서든 접근 가능 >> 동일 패키지 [일반클래스, 상속받은 자식클래스], 외..
ZB BE 6th - 자바 공부 #6-1. 클래스와 객체 [클래스와 객체] 1. 클래스 (class) : 객체를 정의하는 설계도, 붕어빵 틀, 레시피 2. 객체, 인스턴스 2-1 객체(Object) : 실체 2-2 인스턴스 (Instance) : 클래스와 객체의 관계 클래스로부터 객체를 선언 (인스턴스 화) 어떤 객체는 어떤 클래스의 인스턴스 라는 관계를 설명할때 사용. 3. 클래스 사용 클래스 : 객체를 만들기 위한 설계도 - 객체 변수, 메소드로 이루어짐. [클래스 형태] public class 클래스명 { // 객체 변수 // 메소드 : 리턴타입, 메소드명(파라미터) ex) sout 단축키, toBinaryString // + 접근제어자 : 추후 실습을 통해 교육 예정 // + static : 추후 실습을 통해 교육 예정 } 4. this, this() ..
ZB BE 6th - 자바 공부 #5-1 반복문 활용 문제 반복문을 실행할 때 마다 물 온도를 1도씩 올리고 100도가 되면 종료. 추가로 10도, 20도, ...10도 마다 물 온도를 출력하라. 1. for 반복문 int waterTemp = 0; for (waterTemp=0; waterTemp
ZB BE 6th - 자바 공부 #5. 반복문 [반복문] 공통 메소드 - continue : 반복문에서 실행하다 continue를 만나면 그 이후 부터는 실행하지 않음. - break : 코드 진행 중 만나면 그 자리에서 전체 중지. 1. 반복문 - for : 주어진 횟수만큼 반복하여 실행하는 구조. 코드 사용 예시 : for (초기치; 조건문; 증가치;) { 반복하여 실행할 내용; } EX) [1-5까지 별찍기] for (int i =0; i코드 사용 예시 상단에 테이터타입 변수명 = 데이터타입에 맞는 데이터값을 선언해야한다. Ex) int/boolean/String 변수명 = 데이터 타입에 맞는 데이터값; while (변수명 +조건문 ( 코드 사용 예시 상단에 테이터타입 변수명 = 데이터타입에 맞는 데이터값을 선언해야한다. int/boolean/..
ZB BE 6th - 자바 공부 #4-1. 다차원 배열 활용 문제 Q. 아래와 같이 3x3 행렬이 2차원 배열로 초기화 되어있다. 모든 원소를 1로 변경하고, 대각 원소는 10으로 변경하시오. >> 1. testArray1의 모든 원소를 1로 초기화한다. 2. 대각원소 testArray1[0][0], testArray1[1][1], testArray1[2][2], testArray1[0][2], testArray1[2][0] 을 10으로 초기화. int [][] testArray1 = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}; for (int i = 0; i
ZB BE 6th - 자바 공부 #4. 다차원 배열 배열에서 가로 : 행, 세로 : 열 이라고 칭하며 각 index 0 부터 시작한다. 젤 좌측 상단 행 : 0번째 행, 젤 좌측 상단 열 : 0번째 열 1. 다차원 배열 1차원 배열 ex) int[] myArray1 = {1,2,3,4,5}; 다차원 배열 ex) int [][] myArray3 = {{1,2,3}, {4,5,6}}; // 2차원 배열 int [][][] myArray4 = {{{1,2}, {3,4}}, {{5,6}, {7,8}}}; // 3차원 배열 2. 이차원 배열 이차원 배열의 생성 방법 A. 초기화 하는 방법 코드 사용 예시 자료형/데이터 타입[][] 변수명 = 초기화 자료; Ex) int [][] myArray3 = {{1,2,3}, {4,5,6}}; B. 사이즈로 바로 생성 코드 ..