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 |
댓글