Java(35)
-
상속과 오버라이딩
1. 상속1-1. 상속이란? 부모 클래스가 가지는 멤버(필드, 메소드)를 자식 클래스가 물려 받아 자신의 멤버인 것처럼 사용할 수 있도록 만든 기술멤버 외에도 부모 클래스의 타입 또한 상속이 된다. (다형성의 토대)단, 생성자와 초기화블럭은 상속되지 않는다. 자손클래스의 인스턴스 = 조상 클래스의 멤버 + 자손 클래스의 멤버 따라서 자손 클래스의 멤버개수는 조상 클래스보다 항상 같거나 많다자바는 단일상속(자식 클래스는 하나의 부모 클래스만 가지는)만 지원한다. 1-2. 상속의 장점클래스 간 계층 관계를 형성하여 다형성 문법의 토대가 된다.코드의 재사용성을 높히고 코드의 중복을 제거하여 프로그램의 생산성과 유지보수에 기여한다.코드의 추가 및 변경이 용이: 상속을 통해 클래스를 작성하면 보다 적은 양의 ..
2025.02.23 -
오버로딩과 가변인자
1. 오버로딩이란?같은 클래스 내에서 같은 이름의 메소드를 매개 변수부만 다르게 하여 정의하는 것자바에서는 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메서드가 있더라도 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메서드를 정의할 수 있다.장점같은 기능을 하는 메서드에 매개변수가 다르다는 이유로 모두 다른 이름을 붙이는 것은 관리에 어려움이 있음오버로딩을 통해 여러 메서드들이 하나의 이름으로 정의될 수 있다면 기억하기도 쉽고 이름 짓는 고민을 덜 수 있다.예시: System.out.println()//println의 매개변수로 어떤 타입을 넣느냐에 따라 호출되는 println메서드가 달라진다.public void println(String x) {..} //String Syst..
2025.02.21 -
제어자
1. 제어자란?제어자란 클래스, 변수 또는 메서드의 선언부에 함께 사용되어 부가적인 의미를 부여한다.제어자의 종류접근 제어자: public, protected, default, private -> 한 가지 선택하여 사용그외 제어자: static, final, abstract 등2. 접근 제어자 (access modifier)역할: 멤버 또는 클래스에 사용되어, 해당하는 멤버 또는 클래스를 외부에서 접근하지 못하도록 제한함 종류 (public > protected > default > private) public : 접근 제한이 전혀 없다protected : 같은 패키지 내에서 + 다른 패키지의 자손 클래스에서 접근 가능default : 같은 패키지 내에서만 접근이 가능하다. (접근 제어자가 안 붙어 있..
2025.02.21 -
변수의 초기화
변수의 초기화변수 초기화: 변수를 처음 만들고 값을 저장하는 것 멤버 변수(메서드영역)와 배열(heap)의 초기화는 선택적이지만, 지역 변수(stack)의 초기화는 필수적이다. 멤버 변수의 초기화 방법 : 명시적 초기화, 초기화 블럭, 생성자1. 명시적 초기화변수 선언과 동시에 초기화하는 것 2. 초기화 블럭 초기화 작업이 복잡하여 명시적 초기화만으로는 부족한 경우에 초기화 블럭을 사용한다클래스 초기화 블럭: static { }클래스변수의 복잡한 초기화에 사용된다.클래스가 메모리에 처음 로딩될 때 단 한번만 수행됨static { }인스턴스 초기화 블럭: { }인스턴스변수의 복잡한 초기화에 사용된다.인스턴스를 생성할 때 마다 수행됨.생성자보다 인스턴스 초기화 블럭이 먼저 수행된다.public class ..
2025.02.21 -
생성자
1. 생성자란? 생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드'이다.생성자의 조건생성자의 이름은 클래스의 이름과 같아야한다.생성자는 리턴 값이 없다.Card c = new Card();연산자 new에 의해 메모리에 Card 클래스의 인스턴스가 생성된다생성자 Card()가 호출되어 수행된다연산자 new의 결과로 생성된 Card 인스턴스의 주소가 반환되어 참조변수 c에 저장된다.생성자 사용 목적인스턴스 생성 시점에 수행할 명령이 있을 경우매개변수 있는 생성자의 경우 매개변수로 전달 받은 값으로 필드 초기화 할 경우작성한 생성자 외에는 인스턴스를 생성하는 방법을 제공하지 않고 싶을 경우 (인스턴스 생성 방법 제한, 초기값 전달 강제화)2. 생성자 종류1) 기본 생성자매개변수가 없는 생성자로..
2025.02.20 -
변수와 메서드
변수변수 유형선언 위치메모리 영역기본값특징지역 변수메서드 내부스택(Stack)X 메서드 호출시 생성메서드 종료시 소멸멤버 변수인스턴스 변수클래스 내부 (static 없음)힙(Heap)O 객체당 개별로 존재 인스턴스 생성시 생성참조되지 않을시 GC가 제거클래스 변수클래스 내부 (static 있음)메서드 영역O 모든 객체가 공유 프로그램 시작시 생성프로그램 종료시 소멸 매개변수메서드의 () 내부스택(Stack)X메서드 호출시 생성메서드 종료시 소멸 1. 지역 변수 (Local Variable)선언 위치: 메서드, 생성자, 또는 블록 내부에서 선언됨.메모리 영역: 스택(Stack)에 저장됨.생명주기: 변수가 선언된 블록이 끝나면 사라짐.기본값: 자동으로 초기화되지 않으므로 반드시 값을 할당해야 함.public..
2025.02.20