목록JAVA Book Study 19
재밌고 어려운 IT를 이해해보자~!
01. 클래스에서의 타입 변환 자동 형변환 상속 관계에 있는 자식 클래스의 객체를 부모 타입의 객체로 변환할때 자동 형변환 가능. 부모 클래스(타입) 객체 변수 = new 자식 클래스 () ; 부모 클래스(타입) 객체 변수 = 자식 객체 강제 형변환 ( (자식타입) 부모타입). 메서드(); 자식 타입 변수 = (자식 타입) 부모 타입; 02. 다형성 상속 + 메서드 오버라이딩 + 클래스 타입변환 을 통해 하나의 타입으로 다양한 객체를 사용할 수 있다! 다형성을 잘 활용해 구현하면 코드를 수정할 때 불필요한 수정이 사라진다. 03. instanceof 연산자 참조 변수가 참조하고 있는 인스턴스의 실제 타입을 확인할 수 있는 연산자. 객체 instanceof 타입(클래스명) 특징 instanceof 기준으로..
01. 상속 상속이란 ? 부모 역할을 하는 클래스가 자식 역할을 하는 클래스에게 클래스 멤버와 메서드를 물려주는 것을 상속이라고 한다. class A { } class B extends A { } B : 자식클래스 A : 부모클래스 A가 B에게 상속했다 or B가 A로부터 상속 받았다. 자식클래스에 구현하지않은 멤버변수, 메서드를 사용할 수 있다. 02. 상속에서의 생성자 super() 부모 클래스의 멤버변수를 초기화해야하는데 자식클래스는 초기화할 수단이 없기 때문에, super() 메서드를 통해서 부모 클래스의 생성자를 호출해 초기화한다! 03. 오버라이딩 부모클래스의 메서드가 마음에 안들때! 자식마음대로 내용을 변경해서 사용이 가능하다. 이것을 오버라이딩 이라 부른다. 조건 부모 클래스의 메서드 이름..
01. 생성자의 특징 생성자란 ? 객체를 생성할 때 호출되어 객체의 멤버변수 초기화를 담당하는 특별한 메서드이다. 생성자는 일반 메서드와 달리 반환타입이 없으며, 메서드의 이름은 클래스 이름과 동일하다. 기본 생성자 클래스(매개변수1,매개변수2..) { } public class Snack { int price; Snack() { //기본 생성자 } } 기본 생성자는 클래스 생성시 자동호출 되어 숨어있지만, 직접 입력할 수도 있다. 생성자 선언 이유 생성자를 통해서 객체를 메모리에 올림과 동시에 객체 멤버의 데이터를 초기화할 수 있으며, 매개변수를 받는 것도 가능하다. Snack 마다 가격이 다르다면 생성자를 통해 멤버변수 price를 각자의 가격으로 초기화 하는 것이 효율적! 02. 생성자 오버로딩 오..
01. 메서드 메서드 메셔드란, 클래스 안에서 특정 기능을 수행하기 위한 코드들을 따로 하나의 블록으로 묶어 놓은 집합을 말한다. 메서드를 사용하면 같은 코드 반복작성을 피할 수 있고, 재사용 하기 편하며, 중복 코드를 제거할 수 있다. 메서드 선언 접근 제한자 반환 타입 메서드 이름() { //코드 } 접근 제한자(제어자, access modifier) : 메서드에 접근할 수 있는 범위 결정. 반환 타입(return type) : 메서드 호출 후 어떤 타입으로 반환할 것 인지 타입을 미리 정해준다. 반환값이 없으면 'void'. 메서드 이름 : 변수처름 이름을 가지고, 메서드를 호출할 때 사용. 라이브러리 클래스에 있는 메서드 - 인스턴스 메서드 : 객체를 생성함과 동시에 객체의 멤버들이 메모리에 올라..
01. 객체 지향 프로그래밍(Object-Oriented Programming) 객체는 일반적으로 상태를 표현할 수 있고 우리가 행동으로 실행할 수 있는 모든 것들을 말한다. ex) 사람, 선생님, 직원, 수업, 시험 02. 객체와 클래스 클래스 객체를 생성하기 위한 제작 설명서라고 말할 수 있다. 하나의 클래스로 여러 개의 객체를 생성할 수 있다. 클래스 선언 및 객체 생성 접근제한자 class 클래스이름 { } class Car { //Car 클래스 선언 } public class Ex { public static void main() { Car c = new Car(); 클래스명 객체명 =new 클래스명();
01. 배열 배열이란 같은 자료형의 변수를 지정하여 여러 데이터를 저장할 수 있는 저장 공간을 의미한다. 여러데이터를 담을 수 있는 구조를 자료 구조 라고도 한다. 배열의 선언 int[] arr;자료형[] 변수 이름; int arr[];자료형 변수 이름[]; null 키워드 int num; 초기화 되지 않은 변수는 메모리가 변수를 기억하기 위해서 불특정 값을 부여하지만프로그램에서 사용될 수 없다. int arr[]; 배열의 경우엔 불특정한 값이 아닌 'null'키워드를 부여한다. null의 의미는 "공간이 존재하지 않는다." or "없다"라는 의미이다. 배열 변수는 생성되었지만, 아직 그 안에 값을 담을 공간이 생성되지 않았다는 뜻이다. 이떄 arr은 Stack영역에 생성되며, 배열 데이터를 저장하기 위..
01. 반복문 반복문은 프로그램 코드 내에서 똑같은 명령문을 반복해서 수행하도록 제어하는 명령문이다. 반복문의 종류로는 for, while, do~while문이 있다. 02. for문 for( 초기화식; 조건식; 증감식) { 실행문; } //주어진값이 조건에 만족하는동안 반복문 수행. //초기화식,조건식,증감식이 필요없는 경우 다음과 같이 생략 가능하다. for ( ; ; ) { 실행문; } //조건식이 생력될경우, true로 간주되어 무한 반복이 이루어진다. //이런것도 가능하다. for(int i==0, j=0; i
01. 제어문 일반적으로 프로그램에 포함된 실행문은 순차적으로 수행된다. 하지만 특별한 상황의 경우 반복하거나, 조건적으로 실행해야 할 때가 있다. 그럴때 제어문을 사용해서 실행 순서를 변경할 수 있다. 제어문으로는 조건문, 반복문, 분기문이 존재한다. 02. 조건문 조건식에 따라서 프로그램의 흐름을 제어할 수 있는 문법. 조건식의 true, false 라는 boolean 결과에 따라 어떤 구문을 실행할 지 결정한다. if문과 switch문이 존재하며 조건이 적으면 if, 많으면 switch 문을 사용하는 것이 효율적이다. 03. if문 if (조건식) { 코드; ... } //코드가 한줄이라면 중괄호 생략 가능 if (조건식) 코드; if (조건식) 코드; 04. if - else 문 if (조건식) ..