데이터 영역 ( 콘스탄트 영역 ) 프로그램이 로드 될 때부터 언로드 될 때까지 존재하는 영역동적 메모리 ( 힙 메모리 ) 생성된 인스턴트가 할당되는 영역참조변수가 사라지면 가비지 컬렉터에 의해서 힙 메모리 영역에서 삭제된다.스택 메모리지역 변수가 할당되는 영역stati
문제에 Taxi 객체를 추가해서 실습했다.Bus객체Subway 객체Taxi객체Student 객체여기서 객체 생성없이 객체를 매개 변수로 사용한게 이해가 가질 않는다.main클래스실행결과
생성자 this생성자에서 다른 생성자를 호출할 때 사용한다.자바의 정석 기초편 공부하면서 생성자 this는 생성자내에서 반드시 첫줄에 와야한다고 암기 했었는데, 오늘 온라인강의 수강하면서 이유를 알았다. 생성자에서 다른 생성자를 호출하는 경우, 인스턴스의 생성이 완전하
접근 제어 지시자는 클래스 외부에서 클래스의 멤버 변수, 메서드, 생성자를 사용할 수 있는지 여부를 지정하는 키워드이다. 그 중 private 에 대해 실습 해 보았다.private은 같은 클래스 내부에서만 접근 가능하다.private 으로 선언된 멤버 변수 (필드)에
객체 클래스메인 클래스기본 생성자와 매개변수가 있는 생성자 둘 다 사용한 풀이를 해보기 위해서 female 참조 변수도 추가해서 작성해보았다.객체 클래스메인 클래스메인에서 값을 입력하면 오류가 발생했다. 이는 0으로 시작하는 숫자가 있거나 숫자형의 자료형에 int 를
변수의 자료형에는 기본 자료형과 참조 자료형이 있다.참조 자료형 변수는 반드시 사용전에 인스턴스를 생성한 후 사용해야 한다. 참조 자료형 변수가 가질 수 있는 값은 null과 객체 주소이다.String타입 변수는 예외적으로 인스턴스 생성 없이 사용 가능하다.지역변수는
컴퓨터 속에만 잇는 저장소(로컬 저장소)가 아닌,인터넷 세상 어딘가(원격)에 있는 다른 컴퓨터 속의 저장소사용하는 이유 : 백업, 협업을 위해파일을 올리는 것이 근본적인 목적이 아닌 Github는 버전을 올리는 것 (구글드라이브, 네이버 마이박스와의 차이점)클론(clo
명령어 : ssh-keygen개인 키 (아래의 경로에 존재)공유키 (아래의 경로에 존재)Github에 공유 키 등록cat <공유키\_경로> 명령어로 공유 키 내용을 확인Github - Settings - SSH and GPG keys - New SSH key소스코
브랜치는 버전을 여러개의 흐름으로 관리하는 방법이다.브랜치는 버전의 분기독립적으로 어떤 작업을 진행하기 위한 개념이고, 브랜치는 다른 브랜치의 영향을 받지 않기 때문에, 여러 작업을 동시에 진행할 수 있다.브랜치를 나눈다 (예 : 쇼핑몰-장바구니/주문목록)각자의 브랜치
$ pwd : 현재 경로$ ls : 현재 경로의 파일 조회$ ls -al : 숨긴 파일까지 조회cd <path> : path로 이동cd .. : 상위 디렉토리로 이동cd . : 현재 디렉토리로 이동cd ~ : 홈 디렉토리로 이동 (윈도우에서는 사용자 폴더 예: /
revert : 이전 커밋 내역들을 그대로 두고, 되돌리고 싶은 커밋의 코드만 복원시킨다. (취소이력이 남음)reset : 커밋 내역들을 삭제하고, 특정 시점의 커밋으로 되돌아간다. 특정 사건을 없었던 일로만드는 revert, 시계를 과거로 돌리는 resetreset은
깃은 버전을 관리하기 위한 도구버전 = 변경사항 = 유의미한 변화가 결과물로 나온 것 = 커밋(commit) 변경 내역 확인이 어렵다.작업을 되돌리기가 어렵다.협력하기 어렵다.변경 내역들을 기억하며필요하다면 작업을 되돌리며여러명의 코드를 쉽게 나누고 합치며깃은 VCS의
추상메서드의 집합 (상수, static메서드, default메서드)구현된 것이 전혀없는 설계도(껍데기) 모든 멤버가 public인터페이스내의 추상메서드와 상수의 제어자는 생략 가능 ( ∵ 모든 추상메서드와 상수는 항상(예외없이) 똑같은 제어자가 붙기 때문에)상수 : p
추상화된 코드는 구체화된 코드보다 유연하다 (변경에 유리)미완성 메서드를 가지고 있는 클래스 (미완성 설계도)다른 클래스에 도움을 주기 위한 클래스, 객체 생성 불가상속을 통해 추상 메서드를 구현해야 인스턴스 생성이 가능추상클래스 내에 모든 추상메서드를 구현하지 않으면
조상 타입 참조 변수로 자손 타입 객체를 다루는 것👉 타입 불일치 OK! 예) Tv t = new SmartTv();자손 타입의 참조 변수로 조상 타입 객체를 다룰 수 없다. (∵ 조상 타입의 멤버개수가 더 적기 때문) 사용할 수 있는 멤버의 개수를 조절하는 것조상,
서로 관련된 클래스의 묶음클래스의 실제 이름은 패키지를 포함 (예: java.lang.String)패키지는 소스파일의 첫번쨰 문장으로 단 한번 선언같은 소스파일 내의 클래스들은 같은 패키지에 속한다.패키지 선언이 없으면 이름없는(unnamed) 패키지에 속한다. (de
기존의 클래스로 새로운 클래스를 작성하는 것(코드의 재사용)두 클래스를 부모와 자식의 관계로 맺어주는 것자손은 조상의 모든 멤버를 상속 받음 (생성자, 초기화 블럭 제외)자손의 멤버개수는 조상의 멤버개수 보다 적을 수 없다. (같거나 많음)자손의 변경은 조상에 영향을
객체를 정의하고, 만들어내기 위한 틀 (설계도)소프트웨어 세계에 구현할 대상iv의 묶음소프트웨어 세계에 구현된 구체적인 실체 👉 객체의 실체화실체화 된 인스턴스는 메모리에 할당💡 객체에 인스턴스가 포함된다고 볼 수 있음남궁성의 정석 코딩 - 자바의 정석 기초편(20
인스턴스 초기화 메서드 (=iv 초기화)생성자의 이름은 클래스 이름과 같아야 한다.생성자는 리턴값이 없다. (하지만 void를 쓰진 않음)생성자의 첫 줄에는 반드시 생성자를 호출해야 한다.그렇지 않으면, 컴파일러가 자동으로 생성자의 첫 줄에 super( );(조상의 기
변수의 값을 읽기만 가능함 (값을 받음)변수의 데이터타입이 기본형 8가지char byte short int long float double boolean변수의 값을 읽고, 수정이 가능함 (주소를 받음)데이터타입이 기본형 8개가 아니면 참조형반환타입 - 객체의 주소를 반