Develope_Web&App43 [Java의 정석] 객체지향 2-3 다형성(Polymorphism) - 여러 가지 형태를 가질 수 있는 능력 - 조상 타입 참조 변수로 자손 타입 객체를 다루는 것! class Tv { boolena power; int channel; void power() { power != power;} void channelUp() { ++channel;} void channelDown() {--channel;} } class SmartTv extends Tv { String text; void captoin() {} } Tv t = new SmartTv(); //타입 불일치이지만, 다형성 때문에 가능해진다!! 실질적으로 t는 2개의 인스턴스와 3개의 메서드밖에 사용못함! 2021. 2. 4. [Java의 정석] 객체지향 2-2 패키지 - 서로 관련된 클래스의 묶음 - 클래스는 클래스 파일, 패키지는 폴더, 하위 패키지는 하위 폴더 - 클래스 실제 이름은 패키지를 포함. -rt.jar는 클래스들을 압축한 파일 (이 안에 자바 관련 패키지/클래스 들어가 있음, Java9 부터는 모듈 개념) - 패키지는 소스파일의 첫 번째 문장으로 단 한 번 선어 - 같은 소스 파일의 클래스들은 모두 같은 패키지에 속하게 된다. - 패키지 선언이 없으면 이름 없는 패키지에 속하게 된다. - bin 폴더 - 컴파일된 클래스 파일(*.class)이 있는 곳 - src 폴더 - 소스 파일(*.java)가 있는 곳 bin 폴더로 들어가서 하거나, 환경변수에 등록해서 실행시킬 수가 있다. import 문 - 클래스를 사용할 때 피키지 이름을 생략할 수 있다.. 2021. 2. 4. [Java의 정석] 객체지향 2- 1상속 상속 - 기존의 클래스로 새로운 클래스를 작성하는 것. (코드의 재사용) - 두 클래스를 부모와 자식으로 관계를 맺어주는 것. class Parent{} class Child extends Parent{ } - 자손은 조상의 모든 멤버를 상속받느다. (생성자, 초기화 블럭 제외) - 자손의 멤버 개수는 조상보다 적을 수 없다.( 같거나 많다.) - 부모 클래스보다 커지면서 확장되기에 extends를 슨다!! package chap07; public class Point { int x; int y; } class Point3D { int x; int y; int z; } class Points3D extends Point{ int z; } 위처럼 상속을 통해 진행하면, 보다 간결하게 만들어낼 수가 있다!!.. 2021. 2. 3. [Java의 정석] 객체지향 1-2 Static 메서드와 인스턴스 메서드 인스턴스 메서드 - 인스턴스 생성 후, '참조변수.메서드이름()'으로 호출 - 인스턴스 멤버(iv, im)와 관련된 작업을 하는 메서드 - 메서드 내에서 인스턴스 변수(iv) 사용 가능 static 메서드(클래스 메서드) ex) Math.random() Math.round() - 객체생성없이 '클래스이름.메서드이름()'으로 호출 - 인스턴스 멤버(iv, im)와 관련없는 작업을 하는 메서드 - 메서드 내에서 인스턴스 변수(iv) 사용 불가 clss MyMath2 { long a, b; long add() { //인스턴스 메서드 return a+ b; //인스턴스 변수 } static long add (long a, long b) { //클래스메서드(static 메서드.. 2021. 2. 3. 이전 1 ··· 5 6 7 8 9 10 11 다음 반응형