[*] Class 기초개념
클래스는 유사한 변수(멤버 변수)와 함수(메소드)의 묶음이다.
클래스는 폴더와 같아서 폴더내에서 변수와 함수가 사용된다. 따라서 나중에 변수가 겹치거나 중복되어도 해도 오류가 나지 않는다. = 기존의 전역변수, 지역변수와의 차이점이다.
public class Main5 {
public static void main(String[] args) {
int k = sum(5,3);
System.out.println(k);
}
public static int sum(int a, int b){
int sum = a + b;
return sum;
}
}
class A = new class 는 생성자로 사용할 수 있는 공간을 생성한다. 혹은 변수 초깃값을 설정한다.
sum(int a, int b) 와 같이 파라미터가 있는 생성자의 경우 생성자(공간)를 따로 안만들어주기 때문에 필요시 생성자(공간)을 따로 생성해야한다.
[*] 패키지
패키지도 사실상 변수 명으로 인해 만들게 되었다.
[*] 상속
상속은 기능 추가시 사용된다. 대표적으로 만들어진 라이브러리를 수정해 사용할 필요가 있을 때 쓰인다.
//패키지도 변수명때문에 만듬
//상속은 기능 추가시 만듬 , 남이 만든 라이브러리 수정시 많이 사용.
//오버라이딩(=오버라이드) : 재정의한것만 해당 함수를 씀.
//super.함수 = 복사 가능.
//extend=상속
//부모 타입 + 변수 = 생성자() 가능 / 부모로 타입 지정해놓으면 뒤에 생성자만 바꿔서도 쓸수있음.
//오버로딩 : 이름 중복 사용 가능 / 상속과 아예 다름.
//public private 상속하지않게 = 접근제어
//외부에서 사용 불가 = 오용방지 메소드는 public, 변수는 private
//protected 상속한 부모자식간엔 볼 수 있음
//default 패키지 내부에서만 볼 수 있음. => 가시성의 차이
//인터페이스: 껍데기만 있음. 선언만 있음. "구현"해서 씀.나머지는 알아서 오버라이드해라.
//사용의 일관성을 위해 인터페이스로 강제시킴. 인터페이스를 초기로 밑에 얘들을 수정후 위에 고정시킴. = 다형성, 형태 다양
//추상클래스는 껍데기만 , 상속을 무조건 해줘야함 나머지는 알아서 오버라이드해라
//static(정적) 고정적인 => 여러곳에서 사용됨. 클래스 변수라고 이야기함. 클래스에 붙어있어서.
//클래스 이름으로 바로 접근이 가능. static 메소드도 그렇게 할 수 있음.
//
'개발 > Java' 카테고리의 다른 글
[Android 개발]Unable to load class 'com.google.common.util.concurrent.internal.InternalFutureFailureAccess'. 에러 (0) | 2022.11.11 |
---|---|
[Java] 2주차 - 파일 읽기, Arraylist에 자료 삽입 (0) | 2022.11.01 |
[Java] 1주차 - 단순 사칙연산 계산기 (0) | 2022.10.28 |
[Java] 1주차 - 백준 기초 문제 10869번: 사칙연산 (0) | 2022.10.28 |
[Java] 1주차 - 단순 수 정렬 (0) | 2022.10.28 |