반응형

오버로딩

-동일한 함수명으로 여러 개의 함수를 제공하는 것

-구별할 수 있도록 매개변수 타입” or “타입 개수가 달라야 함

-리턴타입으로 구별할 수 없다

-(중요)같은 기능을 하는 애들끼리 묶어야 한다.

오버로딩

 

-같은 리턴 타입은 오버로딩 불가

 

 

오버로딩

 

This, This()

-자기 자신을 접근할 수 있게 해주는 객체 레퍼런스

-인스턴스 메소드의 첫번째 매개변수로 항상 존재, 만들 수는 없고 존재함

-Static 메소드에는 없다. 모든 객체가 사용하기 때문

This 예제

-메소드 안에서 필드와 매개변수의 이름이 같을 경우 지역 변수가 우선순위가 높기 때문에 매개변수가 지정됨

This 예제

-this를 앞에 붙여주면 필드가 지정됨

This 예제

-this()

This() 예제

 

Final

-값을 변경할 수 없기 때문에 선언과 동시에 초기화 시켜야 한다.

(X)

final선언의 잘못된 예시

(O)

 

FInal선언 예시

-final은 어떤 객체에서나 같은 값이기 때문에 static으로 선언

-static은 메모리 최적화 기능 중 하나

static 예시

 

반응형
반응형

인스턴스(instance)

인스턴스(instance)는 같은 클래스에 속하는 개개의 객체로, 하나의 클래스에서 생성된 객체를 말한다

추상화

본질은 바뀌지 않는다.

최적화

심플하게 만들기

클래스

-is ~a: 상속할 때 사용

-has ~a: 강사님이 마이크를 사용하다.

다형성

편하려고 사용

오버로딩

같은 이름으로 구분해서 부를 수 있다.

-ex) 여자 학생/ 남자 학생 //ㅇㅇ학생

OOP는 항상 사용자 위주로 만들어야 한다

(사용자들이 만족할 수 있도록 개발)

 

제어문 If()

-작업량을 줄이고 분기를 할 것인가를 고민할 때 자주 사용

 

if(조건){true} //조건이 참일 경우, {}을 사용 안 할 경우 첫 번째 ; 까지만 실행

  if else(조건){true} //첫 번째 조건이 거짓, 두 번째 조건이 참일 경우

  else{false} //조건이 거짓일 경우, 참일 경우 건너뜀

Ex)

If문 예제

결과

결과

 

제어문 Switch()

switch(value){

case 1:  //value가 값1일 경우

           break;  //없을 경우 전 라인이 실행됨

case 2:  //value가 값2일 경우

           break;

break;

}

 

Ex)

Switch문 예제

 

결과

결과

반복문 for()

for( 초기문 ; 조건문 ; 증감문 ){

// 조건문이 false일때 탈출

       // 블록내 마지막 라인을 지나고 증감문 실행 조건문 재실행

}

 

Ex)

for문 예제

 

결과 

결과

반복문 While()

While 조건문이 경우 블록안의 코드가 실행됨 거짓 경우 실행X

 

While(조건문){//블록이 없을 경우 첫번째 ‘;’ 까지 실행

 True; //true 경우 실행

       //증감문은 아무 곳에나 작성

}

 

while 사용시 주의사항

while문은 자기 조건식의 초기화를 바로 위에 해주어야 한다.

무한 루프가 돌지 않도록 주의해야 한다.

 

Break 탈출 반복문을 실행 중지할 사용

Continue 증감식 또는 조건식으로 이동(조건문에서 사용X)

 

함수를 만들 모듈로 쪼갠다

 

사각형 종이접기 횟수와 사각형 개수 구하기

사각형 종이접기 횟수와  사각형 개수 구하기

이중for, while문으로 구구단 만들기

이중 for문을 사용해 구구단 만들기

 

Int 정적 메모리 선언

Runtime: array, object 동적 메모리 선언

함수는 함수가 부른다

 

메소드

1.  객체를 만들어야 사용할 수 있는 메소드

2.  만들지 않아도 사용할 수 있는 메소드: static

 

Call by value

 

지역 변수 는 속해있는 method 안에서만 사용 가능

객체 안에 있는 가장 중요한 정보: 필드

필드 private 접근 권한자 사용. 보안이 좋아야 됨

필드와 메소드의 관계는 중요함!

Private((나만 사용가능) ex)지갑: 내 손만 접근가능(메소드)) -> default -> protected(상속 관계만 접근 가능) -> public(모두 접근 가능)

                     

인스턴스, 추상화, 클래스, 다형성, 오버로딩, 제어문, 반복문, 메소드

반응형

+ Recent posts