학원에서 필기 열심히 했으니까 올려줘야지ㅎㅎ 상속 (inheritance) '클래스 간의 관계를 맺어줌' -부모 클래스(parent class) -자식 클래스(child class) =>is a관계 ex) 고양이는(자식) is a 동물이다.(부모) 체크카드는 is a 카드다. 신용카드는 is a 카드다. 클래스가 부모&자식 (상속) 관계가 되면 -자식 클래스는 부모 클래스가 가진 재산(변수, 메서드 등등)을 물려받아서 사용 가능하다. -> 코드의 재사용이 가능하다!! -공통 내용을 미리 제작해두고 여러 곳에서 재사용 하겠다. -> 코드 중복을 최소화! -자식 클래스는 부모 클래스 멤버를 자기 것인양 사용 가능하지만 부모 클래스는 자식 클래스가 직접 정의한 멤버에는 접근할 수 없다. -상속 관계에서 자식 ..
생성자 - 모든 클래스는 생성자가 반드시 하나 이상 존재한다. ->프로그래머가 만들지 않으면 자바에서 자동으로 제작한다 ->기본 생성자 - 일반적으로 인스턴스 변수의 초기화에 많이 활용한다. - 무조건 void 메서드이다. - 오버로드 (overload) 방식을 자주 활용한다. Card myCard = new Card(); //클래스 이름과 동일 1. new 키워드와 함께 사용되며 신규 인스턴스를 생성한다. (초기화) 2. 생성자 Card()를 실행하고 초기화와 함께 인스턴스 생성 3. 생성된 인스턴스의 주소값을 참조 변수 myCard에 저장 생성자 - this this : 자기 자신을 의미. -인스턴스 자신을 가리키는 참조 변수이다. -동일 클래스 내 다른 생성자 호출에 사용한다. this 는 자기 자..
메서드의 종료 -메서드의 중괄호 {...} 내에 있는 모든 코드의 수행이 끝났을 때 -return : 메서드의 중괄호 내에 있는 코드 수행 중 return 문을 만났을 때 return -종료한다는 면에서 'break'문과 비슷함. -동작 후 출력할 값이 없는 경우 : void 사용. void 뒤에는 뭐 적으면 안된다. -반환 값이 있는 경우 : return 문 뒤에 반환 값 지정 return 반환값; ex)return result; 기본형 / 참조형 타입 매개변수 -실제 다루는 데이터의 읽기만 가능 (read only) -데이터 자체의 복사만 발생 -예제에서 change 메소드를 주었지만 기본형 타입이기 때문에 복사만 될 뿐 여전히 10으로 출력됨. ->복사기로 복사한 용지의 내용을 낙서하거나 지저분하게..
클래스 사용자(프로그래머)가 필요에 의해서 데이터 타입을 직접 정의하는 방식을 의미. ->데이터를 저장하기 위한 변수 영역. ->클래스를 만들어 사용하는 이유? 한 번에 여러 종류의, 여러 개의 변수와 기능을 실행하기 위한 영역의 메모리를 한꺼번에 한줄로 얻어오기 위해 프로그래머가 직접 데이터 타입을 만들어서 사용. 클래스 vs 객체 TV myTv; myTv.power(); 자바에서 .은 소유의 의미. 객체를 사용할 때 .(점)을 잘 사용해야 한다. 클래스 : 자동차 설계도 객체 : 자동차 자동차 설계도는 자동차가 아니다! 자동차를 만들기 위해 정리해 놓은 설명서! 한 가지 더 예를 들면 클래스 : 붕어빵 기계 객체 : 붕어빵 마찬가지로 붕어빵 기계도 붕어빵을 만들기 위한 설명서이다! 이처럼 클래스는 프..
for 반복문 - 순서대로 차근차근 반복 - 조건식이 false가 될 때까지 반복 - 일반적으로 반복 횟수를 예측할 수 있을 때 사용 기본적인 형식은 for(반복기준변수; 반복조건식; 반복증감식) 반복기준변수 : 반복에 대한 기준이 되는 변수 선언. 반복조건식 : 반복 조건식이 true이면 계속 반복하고 false가 되면 그때 반복을 즉시 종료. 반복증감식 : 정해진 반복의 종료를 향해 반복 기준 변수의 값을 바꿔주는 식. 위에서는 for (int i=1 ; i
형변환 -형변환(type conversion) : 어떤 데이터 타입이 다른 데이터 타입으로 바뀌는 현상 -형변환 종류 암시적 형변환(implicit type conversion) 명시적 형변환(explicit type conversion) -암시적 형변환 작은 컵의 물을 큰 컵에 넣는 것 상대적으로 크기가 작은 데이터 타입의 값(데이터)이 상대적으로 크기가 큰 데이터 타입의 변수로 이동할 때는 타입의 변환에 아무 문제가 발생할 여지가 없다. 그래서 프로그래머가 별도의 코드를 작성할 필요 또한 없다. ->형변환에서 중요한 것은 데이터 타입의 크기이다. -명시적 형변환 큰 컵의 물을 작은 컵에 넣는 것 - 물이 넘친다, 문제가 생긴다. (데이터 유실) 상대적으로 큰 타입의 데이터 값을 상대적으로 작은 타입의..
컴파일과 컴파일러 외계인과 소통을 하는 방법? 외계인이 우리 언어를 배우거나 우리가 외계인의 언어를 배워서 소통할 수 있는데, 이것을 컴퓨터와 나누는 대화라고 생각했을 때 컴파일 : 인간이 구분하기 쉬운 고급 언어로 작성된 프로그램을 컴퓨터가 이해할 수 있는 기계어로 번역하는 과정 컴파일러 : 고급 언어로 작성된 프로그램을 기계어로 번역하기 위해 사용하는 프로그램 쉽게 말해서 컴파일은 번역, 컴파일러는 번역가. 자바의 중요한 특징 : 플랫폼에 독립적이다! 플랫폼 종류에 크게 영향을 받지 않는 언어. 프로그램과 프로세스 프로그램은 할 일이 적혀있는 문서일 뿐이라고 생각하면 쉬움! 그래서 실제 프로그램이 실행되기 위해서는 적힌 내용대로 컴퓨터의 실행이 필요. 예를 들어 냉장고에 엄마가 라고 메모를 적어놓아도..