김영한의 실전자바 3

상속

상속 관계상속은 기존 클래스의 필드와 메서드를 새로운 클래스에서 재사용하게 해준다.상속을 사용하려면 extends 키워드를 사용한다. extends는 하나의 대상만 선택할 수 있다. (다중상속 불가능) - 부모 클래스(슈퍼 클래스) : 상속을 통해 자신의 필드와 메서드를 다른 클래스에 제공하는 클래스- 자식 클래스(서브 클래스) : 부모 클래스로부터 필드와 메서드를 상속받는 클래스 상속과 메모리 구조Car 클래스를 상속받는 ElectricCar 자식 클래스가 있다고 가정해보자new ElectricCar( )를 호출하면 ElectricCar뿐만 아니라 부모 클래스인 Car 클래스까지 함께 인스턴스 생성한다.여기서 상속받는 메서드를 electricCar.method()를 호출하면, electricCar 클래..

Java 2024.06.07

final

finalfinal은 상수이다. 변수에 final이 붙으면 더는 값을 변경할 수 없다.class, method를 포함한 여러 곳에 붙일 수 있다. final을 지역변수에 설정할 경우 최초 한번만 할당이 가능하다. 이후에 변수 값을 변경하려고 하면 컴파일 에러가 발생한다.  final - 필드 (멤버 변수)public class ConstructInit { final int value; public ConstructInit(int value) { this.value = value; //final을 필드에서 사용하는 경우에 생성자를 만들어 사용할 수 있다. }} fianl을 필드에 사용할 경우 해당 필드는 생성자를 통해서 한번만 초기화 될 수 있다 package fi..

Java 2024.06.06

메모리 구조와 static

자바의 메모리 구조자바 메모리 구조는 3가지의 영역이 있다. - 메서드 영역 : 클래스 정보를 보관하는 영역. 프로그램의 모든 영역에서 공유한다.- 스택 영역 : 실제 프로그램이 실행되는 영역. 메서드를 실행할 때 마다 하나씩 쌓인다.- 힙 영역 :  객체(인스턴스)와 배열이 생성되는 영역. new 명령어를 사용하면 이 영역을 사용한다. (힙 영역에서 GC가 작동한다) 스택(Stack)과 큐(Que)- 스택 (후입선출, LIFO)  - 큐 (선입선출, FIFO) 이런 자료구조는 각자 필요한 영역이 있다. 선착순 이벤트를 하는 경우라면 큐 자료구조를 사용해야 한다. 스택 영역- 스택영역에 메서드 호출과 지역변수를 관리한다.- 메서드를 계속해서 호출하면 스택 프레임이 계속 쌓인다.- 지역변수 (매개변수 포함..

카테고리 없음 2024.06.05