728x90
반응형

JAVA 261

제어자 ( modifier )

- 클래스와 클래스 멤버 ( 멤버변수, 메서드 )에 부가적인 의미 부여 - (종류) 접근제어자 public / protected / (default) : 아무것도 안붙인 것 / private 그 외 static / final / abstract / native / transient / synchronized / volatile / strictfp - 하나의 대상에 여러 제어자를 같이 사용가능 ( 접근제어자는 하나만 가능 ) : 순서는 상관 없지만 보통 접근제어자를 제일 왼쪽에 쓴다. ex) public class ModifierTest { public static final int WIDTH = 200; public static void main( String[] args ) { System.out.pr..

JAVA 2022.02.26

상속( Inheritance )

상속이란? class 자식클래스 extends 부모클래스 { // ... } - 기존의 클래스로 새로운 클래스를 작성하는 것 ( 코드의 재사용 ) - 두 클래스를 부모와 자식으로 관계를 맺어주는 것 - 자손은 조상 ( 부모의 부모 것도 )의 모든 멤버를 상속받는다. ( 생성자, 초기화 블럭 제외 ) - 자손의 멤버 개수는 조상보다 적을 수 없다. ( 같거나 많다. ) : 안적어도 자동으로 포함되어있다. - 자손의 변경은 조상에 영향을 미치지 않는다. - Java는 단일 상속만을 허용한다. ( C ++은 다중상속 허용 ) - Object클래스는 모든 클래스의 조상이다 : 모든 클래스는 자동적으로 Object클래스를 상속받아 Object클래스에 정의된 11 개의 메서드를 상속받는다. ( toString(),..

JAVA 2022.02.24

변수의 초기화

- 지역변수는 사용전에 꼭 수동 초기화 해야함. - 멤버변수 ( 인스턴스 변수, 클래스 변수 )는 자동 초기화됨. ( default값은 대부분 0 , String은 null ) 멤버변수의 초기화 1. 명시적 초기화 ( = ) : 간단초기화 int door = 4; // 기본형 ( primitive type )변수의 초기화 Engine e = new Engine(); // 참조형 ( reference type )변수의 초기화 2. 초기화 블럭 : 복잡한 초기화 - 인스턴스 초기화 블럭 : { } - 클래스 초기화 블럭 : static{ } 3. 생성자 : iv 초기화 , 복잡한 초기화 클래스 변수 초기화 시점 : 클래스가 처음 로딩될 때 단 한번 인스턴스 변수 초기화 시점 : 인스턴스가 생성될 때 마다

JAVA 2022.02.24

오버로딩 ( overloading) 과 오버라이딩 ( overriding )

오버로딩 : 매개변수는 다르지만 같은 의미의 기능을 수행하는 것. 오버로딩의 성립 조건 1. 메서드 이름이 같아야 한다. 2. 매개변수의 개수 또는 타입이 달라야 한다. 3. 반환 타입은 영향없다. ( 반환 타입이 다른 것으로는 오버로딩이 성립 되지 않는다. ) 오버라이딩 : 상속받은 조상의 메서드를 자신에 맞게 변경하는 것

JAVA 2022.02.22

생성자 ( constructor )

생성자란 인스턴스가 생성될 때마다 호출되는 인스턴스 변수를 초기화하는 메서드 이다. ex) 1) ,2) 는 같은 의미 1) Time t = new Time(); // 생성자 생성. // iv 초기화 t.hour = 12; t.minute = 34; t.second = 56; 2) Time t = new Time (12, 34, 56); // 생성자 생성하고 iv 초기화 까지. 생성자는 - 이름이 클래스 이름과 같아야 한다. - 리턴값이 없다. ( 원래 없는 것이므로 void를 붙이지 않는다. ) - 모든 클래스는 반드시 생성자를 가져아 한다. (생성자가 하나도 없으면 컴파일러가 기본 생성자를 자동으로 추가한다.) ↳ 기본생상자란, 매개변수가 없는 생성자. 생성자 this() - 생성자에서 다른 생성자 (..

JAVA 2022.02.22

static 메서드, 인스턴스 메서드

static 메서드는 객체 생성하지 않고도 사용가능하다. 클래스명.메서드 로 호출하여 사용하고 지역변수를 사용한다. 인스턴스 멤버 ( iv : 인스턴스변수 , im : 인스턴스 메서드 ) 를 사용하지 않는 메서드에 static을 붙인다. 인스턴스 메서드는 먼저 객체를 생성해야 사용 가능하다. 참조변수.메서드 로 호출하여 사용하고 인스턴스 변수를 사용한다. 객체는 iv (인스턴스 변수 )를 묶어놓은 것인데 인스턴스 변수를 사용하기 위해서는 먼저 객체를 생성해야 하기 때문

JAVA 2022.02.20

메서드란 ?

메서드란 ? 1. 작업단위로 문장들을 묶은 것 2. 입력된 값을 받아서 처리하고 그 결과를 반환하는 것. 메서드의 장점 1. 코드의 중복을 줄일 수 있다. 2. 코드관리가 쉽다. 3. 코드 재사용 가능. 4. 코드의 가독성 증가 ( 간결해져서 이해하기 쉬움 ) 메서드 작성 - 반복적으로 수행되는 여러문장을 메서드로 작성 - 하나의 메서드는 한 가지 기능만 수행하도록 작성 메서드 호출 메서드이름 (값1, 값2, ... ); // 값이 필요없는 메서드 (void) 는 값을 넣지 않아도 된다. 메서드 실행에 필요한 괄호 안의 변수를 매개변수( parameter, 복사본 ) 라고 한다.

JAVA 2022.02.18

선언 위치에 따른 변수의 종류

1. 클래스 영역 : 선언문만 가능 ( 변수, 메서드 ) , 순서는 상관없음 1-1 인스턴스 변수 1-2 클래스 변수 ( static 변수, 공유변수 ) 2. 메서드 영역 지역변수 클래스변수는 앞에 static 이 붙고 한번만 만들어진다. 해당 클래스의 모든 객체 (인스턴스)에서 공유된다. 사용할 때는 클래스명.변수명으로 호출 인스턴스 변수는 인스턴스 생성시에 생성된다. 해당 인스턴스에서만 사용된다. 사용 할 때 인스턴스명.변수명으로 호출

JAVA 2022.02.17
728x90
반응형