728x90 국비 학원 가서 개발새발40 국비학원 9일차) 상속, instanceof, 타입변환... 예습)인터페이스 상속 -> 클래스를 다시 사용할 목적 -> 생성자는 상속이 안 됨(클래스 초기화 목적이기 때문) -> 오버로딩 : 거의 생성자에 씀 초기화 목적으로 쓰기 때문//매개변수에 따라 초기화하는 내용이 다르게 -> 오버라이딩 : 상속에서 메소드를 내꺼로 덮어쓰는거 스택에 클래스가 쌓임,->그걸 실행할 때 힙으로 가서 실행을 시킴 타입 변환 -> super(), super. 부모 꺼를 사용함 // toString() 부모타입//업캐스팅 자식타입으로감//다운캐스팅 부모 참조변수에 자식 타입을 집어넣었을 떄, 부모의 변수, 메소드만 사용 가능)))) 자식-자식 관에는 관계 없음 instanceof 연산자 객체 타입을 비교하여 boolean(true or false)로 반환 단, is a 관계시(상속관계 - 사람은 동.. 2022. 10. 8. 국비학원 8일차) 상속, protected, super..(예습:추상클래스) 학원 강의 요약-------------------------------- 생성자에 private을 붙여 객체생성을 제한하는 싱글톤 상속->반복 작업 줄임, 기본 클래스 재사용 1. 조상 클래스 재사용, 자식 클래스 빨리 개발 가능 2. 코드 중복 줄임 3. 유지보수에 탁월 4. 객체 다형성 구현 가능(다형성:객체 참조변수 와따가따~) ---------private 제외-> 같은 클래스만 사용 가능하니까, 겟셋으로 불러옴 ---------생성자 제외-> 부모꺼 상속되지 않음 ---------클래스 3개 까지만 가능 protected -> 같은 패키지 또는 자식만 불러올 수 있음! 그러나 잘 안 씁니다//조상의 조상 것도 불러오기 가능 그러나, 자식의 인스턴스가 생성될 때, 조상의 기본 생성자는 생성됨 왜?.. 2022. 10. 6. 국비학원 7일차) 예습:패키지,(접근)제어자,캡슐화,다형성,참조변수 형변환 학원에선 객체 배열을 공부했는데 이미 예습해서 아는 내용이기 때문에 내일 배울 상속을 대비해 예습했다 클래스+인터페이스의 묶음 클래스를 효율적으로 관리한다->같은 이름의 클래스여도, 다른 패키지에 존재 가능 클래스의 실제 이름은 패키지명을 포함한다 ex)String->java.lang.String / java디렉토리의->서브 디렉토리lang->에 속한 String.class 파일 ㄴ 패키지로 다른 패키지 포함 가능 클래스가 물리적으로(.class)인 것처럼, 패키지는 물리적으로 하나의 디렉토리 pakage 패키지명; 으로 선언 소문자로 짓는 것이 관례라고 한다(클래스와 구분하기 위해) 패키지를 선언 안 하면 기본제공패키지(unnamed pakage)소속 클래스패스->패키지의 루트 디렉토리를 클래스 패스에.. 2022. 10. 5. 국비학원 6일차) 클래스 생성자를 배우다(예습:상속) 인스턴스 초기화 메소드. ㄴ인스턴스 변수의 초기화 작업이나 ㄴ인스턴스 생성시 실행해야하는 작업을 생성자로 만든다 생성자 조건 1.생성자 이름은 클래스 이름과 같아야함 2.생성자는 리턴값이 없음(그러나 void생략), 오버로딩 가능! 클래스이름(타입 변수명, 타입 변수명...) {} //매개변수 있는 생성자 클래스이름() {} //매개변수 없는 생성자 생성자는 인스턴스를 생성하지 않음 new 연산자가 함 클래스-어떤 클래스의 인스턴스를 생성할까 고민 생성자-선택 클래스의 어떤 생성자를 이용할까 고민 클래스에 생성자가 하나도 없다면, 컴파일러가 자동 추가한다 클래스이름() {} //기본 생성자 클래스의 접근 제어자가 public이면 //public 클래스이름() {} 그냥 일단 추가해놓는 게 나음 나중에 상.. 2022. 10. 4. 혼자 공부) 오버로딩 외... 오버로딩이란? 한 클래스 내에 같은 이름의 메소드가 있어도 매개변수의 개수나 타입이 다르면 같은 이름의 메소드로 정의가 가능하다! 오버로딩 조건 1.메소드 이름이 같아야함 2.매개변수의 개수 또는 타입이 달라야함 3.반환 타입은 영향을 주지 못함 오버로딩 메소드의 예) println println(int x) (String x) (char x).... 우리가 쓰는 값에 따라 다른 타입을 출력해줌 int add(int a, int b) {} int add(int x, int y) {} ㄴ오버로딩 X 매개변수의 이름만 다름 int add(int a, int b) {} long add(int a, int b) {} ㄴ 오버로딩 X 반환타입만 다름, 반환타입은 영향없음 long add(int a, long b).. 2022. 10. 2. 국비학원 5일차) 변수의 종류와 호출 스택, 메소드 변수는 세 가지 종류가 있다 클래스 변수 인스턴스 변수 지역 변수 클래스 변수와 인스턴스 변수는 전역 변수라고 부르기도 한다 (전 영역에서 사용 가능해서 인듯) 클래스, 인스턴스, 전역 변수는 선언 위치에 따라 다른데요 class Variable { int iv; 2022. 9. 30. 이전 1 ··· 3 4 5 6 7 다음 728x90