2022/05/24
복습
1. 변수/자료형
ex) 건물/박스 = 변수, 주상복합 = 자료형(type)
2. 자료구조
1) 기본 자료형(primitive type) ex) : 정수형, 논리형, 문자형, 실수형
2) 배열 : 같은 자료형 다수 ex) 아파트(공동주택)
=> 참조 자료형 ((메모리) 주소를 참조(포인터))
ex) 사무실 -> 창고(데이터)-- 데이터를 참고, 안쓰는 데이터나 필요없는 데이터는 가비지 컬렉터가 자동으로 지워줌
3) 클래스 : 구조체 + oop => 클래스 (메서드=함수 void())
2. 객체지향 프로그래밍
: 데이터 중심 프로그래밍
: 기업자산 중심 프로그래밍
: 코드(사원) + 데이터 (기업주) => 데이터(기업주) + 코드(사원)
: 기존 코드(돈) + 재사용 => 상속성
: 보안(개방/폐쇄)
기존 ) 구조적/절차적 프로그래밍
: 함수(코드) 중심 프로그래밍
: ->프로그래머
(람다)함수형 프로그래밍 => 기호식 프로그래밍
// 인터페이스 : 홍보 + 지시
// 추상 메서드(함수) : 지시/명령 = abstract
public void order();
// 구형(실체화, 현실화) : 지시에 따른 구현
public void order() {
//ToDo
}
// 오버라이딩
public void order() {
//ToDo List
}
// 오버 라이딩의 조건
1- 상속(클래스)/ 구현(인터페이스)을 전제로 한다.
2- 메서드 이름이 같아야한다.
3- 인자부가 같아야한다.
4- 리턴형이 같아야한다.
5- 접근 제어자가 부모 클래스(인터페이스) 보다 *축소되어서는 안된다.
ex)- 상속 = 단순한 계승이 아닌 확장(extends) 으로 간주 => *"접근 제어자" 축소 x
6- ** 부모(조상) 클래스 보다 더 넓은(포괄적인,상위의) 예외 클래스를 가질 수 없다.
7- ** 부모 클래스 메서드와 다른 계층의 예외처리를 가질 수 없다.
ex)IOException, SQLException은 Exception의 자녀 클래스이지만 서로 다른 계층
8- final키워드가 지정되면 오버라이딩할 수 없다.
9- static 메서드는 오버라이딩 할 수 없다.
10- private 메서드도 상속 자체가 안되기 때문에 오버라이딩 할 수 없다.
- 추상메서드
추상클레스를 만들고 정의해둔후
Override를 통해 재정의해준다. abstract를 붙여줘야한다.
3. 제어문
: 순차/조건/반복
: 삼항 연산자
구구단
for(int i=1; i<9; i++) {
System.out.println((i+1)+"dan");
for(int j =1; j<=9; j++) {
System.out.println((i+1)+ "*" + j + "=" + ((i+1)*j));
}
}
결과 출력 2~9단까지 출력