본문 바로가기
국비교육/JAVA

국비교육 11일차

by Diligejy 2018. 12. 10.

1. Class = 속성(값) + 메소드(기능)

-> 멤버 변수를 은닉화, 오픈된 메소드가 값 전달 및 변경

-> 모든 멤버를 식별할 수 있다면 접근제한자를 지정한다.


public class user_Name{


}


Nested  : 또다른 클래스를 속성으로 선언

Field     : 상수 public static final 

Constr   : 생성자 = 멤버변수 초기화 this(), super()

Method : 기능을 수행하는 단위


2. 상속 : 클래스 간의 상속 extends = 단일 상속 

          : protected = 상속시에 같은 패키지, 다른 패키지 안에서 접근을 멤버간에 public으로 제한한다.

    : 


3.

equals = > 주소비교, override하면 값비교 가능 


4.


//ex1) 한 문자를 대입받아 대문자인지 유무를 리턴하자.

char ch = 'A';

boolean fw = Character.isUpperCase(ch);

System.out.println("ch = " + fw);


5.

//ex1) 한 문자를 대입받아 대문자인지 유무를 리턴하자.

char ch = 'A';

boolean fw = Character.isUpperCase(ch);

System.out.println("ch = " + fw);

//ex2) ch가 숫자인지 유무를 리턴하자

char ch1 = 'A';

boolean fw1 = Character.isDigit(ch);

System.out.println("ch1 = " +    fw +  "\t"  + Character.getType(ch1));


//ex4) 대입받은 문자열을 모두 대문자로 바꿔보자 

String str = "Converts all of the characters in this String to upper case using "

+ "the rules of the given Locale";

String str02 = str.toUpperCase();

System.out.println(str02);


6.

다형성 - 클래스의 추상화
ⓐ 강제로 재정의

ⓑ 재정의하지 않으면 객체생성 x


Override, Overload하는 이유 메소드의 NameValue때문



7.

ex) 자동차


ⓐ 부서장 회의 = interface = 속성 + 추상 메소드

      12.25 = 자동차 출하

      2500cc = 배기량 1

3000cc = 배기량 2

5000    = 가격1

6000    = 가격2

홍보계획

제조계획

등등 계획


ⓑ ⓐ를 가지고 각 부서 회의 _ 홍보부 _ abstract Class (추상 클래스)
    ⓐ를 전달하고 홍보계획인원 21명  
    1군 ~ 매체홍보 _ 계획(추상 메소드)
    2군 = 각 제조업체에 전달 _계획(추상 메소드)

ⓒ 실제 작업 클래스(일반클래스)
    

ⓓ 상대회사에서 12.25 흡사한 자동차를 출하한다고 선언 _ 예외발생

    예측했다. 1+1으로 팔거다 -> 예외처리


ⓔ 회사가 망했어 - Error


8. 

추상 : abstract라는 키워드를 클래스, 메소드 앞에 선언한다.


public abstract class user_Name(){} : 추상클래스 


ⓐ 추상클래스는 객체생성 불가능 : new user_Name(); x

ⓑ 후손클래스가 선조의 추상메소드를 재정의하지 않으면 후손클래스가 추상 클래스가 된다.

ⓒ 추상메소드는 선택적으로 선언하게 된다.


public abstract void user_Name(); -> 추상메소드

ⓐ 추상메소드는 기능 구현이 없는 선언 메소드이다.

ⓑ 후손이 반드시 재정의하는 메소드이다.


9.

바인드 : 선언과 동시에 주소가 생성, 객체 생성해서 주소가 생성되면 해시 테이블에 등록되 있는데 이러한 주소의 묶음을 

뜻한다.


바인딩 : 


정적 바인딩 : 메모리에 호출된 객체의 주소를 미리 선언해서 호출하는 방법 

동적 바인딩 : 필요할 때만 선조의 주소를 통해 후손의 주소를 찾아오는 방법 -> 다형성 


10.


abstract의 반대말은 final

static의 반대말은 non-static


11. 

추상 클래스의 생성자도 Overload가능


12.

인터페이스 : 완벽한 추상화 - 메뉴 [상수 값, 추상메소드]

public interface User_Name{
    상수 : public static final 

    추상 메소드 : public abstract ...
}


13.




'국비교육 > JAVA' 카테고리의 다른 글

12월 12일 국비교육 13일차  (0) 2018.12.12
12월 11일 국비교육 12일차  (0) 2018.12.11
12월 7일 국비교육 10일차  (0) 2018.12.07
국비교육 9일차  (0) 2018.12.06
국비교육 8일차  (0) 2018.12.05

댓글