본문 바로가기

분류 전체보기

(422)
[Java] 실습 - 전화번호부 만들기 - 1 상속과 오버라이딩을 이용하여 전화번호부 프로그램을 제작해봤습니다. 주소록 제작 조건은 주소록 프로그램 - 친구전용 데이터 : 고교동창, 대학동창으로 구분지어 저장 - 클래스로 제작하며 친구의 정보를 저장하기 위한 용도의 클래스 관리P/G : 친구추가, 검색 등의 기능 - 데이터 저장용 클래스를 이용하여 기능을 구현 . . 을 고려하여 코딩을 하였습니다 . . 예제1 import java.util.*; /* 주소록 프로그램- 친구전용 데이터 : 고교동창, 대학동창으로 구분지어 저장 - 클래스로 제작하며 친구의 정보를 저장하기 위한 용도의 클래스 관리P/G : 친구추가, 검색 등의 기능 - 데이터 저장용 클래스를 이용하여 기능을 구현 */ class Friend // 친구의 기본정보를 저장하는 클래스 { S..
[Java] InstanceOf 하위클래스 형변환 오버라이딩에서 선언된 클래스 인스턴스에 따라 접근할 수 있는 범위가 달랐다. 즉, 하위클래스 인스턴스에는 상위클래스 인스턴스가 접근할 수 있지만, 상위클래스 인스턴스에는 하위클래스 인스턴스가 접근할 수 없다. 그러면 오버라이딩 없이 상속받은 클래스들로 작업할 때는 무슨 일이 일어날까 class BasicBox { public void basicWrap(){ System.out.println("Basic Wrap"); } } class PaperBox extends BasicBox{ public void paperWrap(){ System.out.println("Paper Wrap"); } } class GoldBox extends PaperBox{ public void goldWrap(){ System...
[강남 맛집/강남 혼밥 추천] 서래갈매기 - 가성비 혜자 느낌 점심특선 안녕하세요 가죽쟁이 개발자입니다. 오늘은 비도오고 그래서 가까운 곳에 어디 먹을 곳이 없나 찾다가 발견한 서래갈매기!!!! 은근 돌아다니면서 점심특선 찾는 것도 재밌더라구요 점심특선으로 냉면세트 비빔밥세트 등등 있는데 일단 한 번 들어가봤습니다. 저는 혼자라 두탕정식은 먹지 못하고 파불고기 비빔밥 정식으로 먹었습니다. 기본찬들은 이렇게 있네요 핸드폰하느라 신경 안썼었는데 뒷쪽에 부침개가...!!!! 너무 좋다 기다리던 비빔밥과 파불고기가 나왔습니다! 비빔밥 야채들이 한가득이군요 심지어 밥이 얹어 나온줄 알았는데 아니였습니다. 양이 어마어마하네요 이것때문에 들어왔는데 파불고기!!!! 파불고기는 여기에 찍어먹으라고 하더군요 된장찌개도 빠질 수 없죠 밥을 얹어서 맛있게 먹었습니다. 가성비가 아주 좋은 곳이더군..
[Java] 오버라이딩(overriding)과 오버로딩(overloading) 오버라이딩과 오버로딩은 비슷한 이름으로 많이 헷갈릴 수 있다. 오버라이딩은 상위클래스에 있는 메소드를 하위클래스에서 재선언하면서 하위클래스에 메소드가 작동하도록 하는 것이고 오버로딩은 같은 이름의 메소드들을 선언하여 받는 값에따라 해당 메소드를 불러내는 것을 의미한다. . . 예제 class Aa { void rideMethod(){ System.out.println("Aa Method"); } void loadMethod(){ System.out.println("void Method"); } } class Bb extends Aa { void rideMethod(){ System.out.println("Bb Method"); } void loadMethod(int n){ System.out.printl..
[Java] 오버라이딩(overriding) 오버라이딩(overriding) - 하위클래스에서 상위클래스의 메소드를 리턴타입까지 동일하게 선언한 후, 재정의 하는 것을 의미합니다. - 인스턴스 선언 시 상위클래스형으로 선언하면 모든 하위클래스로 생성이 가능합니다. 즉, 상위클래스형 인스턴스에는 하위클래스형 인스턴스가 들어갈 수 있습니다. 상위클래스형으로 선언된 인스턴스는 오직 상위클래스의 멤버에만 접근가능합니다. (생성된 하위클래스의 멤버에는 접근 불가) 단, 오버라이딩된 메소드는 하위클래스로 접근가능합니다. . . 예제 class Speaker { private int volume; public void showCurrentState(){ System.out.println("볼륨 크기 : " + volume); } public void setVo..
[Java] 상속 has-a관계 has-a관계 하위클래스 has a 상위클래스의 관계로 하위 클래스가 상위 클래스를 소유하는 개념입니다. 해석 : '하위클래스'가 '상위클래스'를 소유한다. has-a관계일 경우 상속을 받기도 합니다.(상속이 어울리지 않는 경우도 있습니다.) has-a관계에서 소유하지 않는 경우가 있으면 상속받지 않는 것이 좋습니다. is-a관계와 has-a관계 이외에는 상속을 하지 않는 것이 보통입니다.(안한다고 봐도 무방합니다.) . . 예제1 class Gun { int bullet; public Gun(int n){ bullet +=n; } public void shot(){ System.out.println("BBANG!!"); bullet--; } } class Police extends Gun { // Po..
[Java] 상속 is-a관계 상속의 조건(상속을 위한 클래스간의 관계) - 모든 클래스들이 상속을 받을 수 있으나, 특정 관계의 클래스들만 상속을 하는 것이 좋습니다. - 특정 관계가 아닌 클래스들이 상속을 받게 되면 오히려 상속받지 않은 것만 못합니다. - 상속을 받을 조건(관계) is-a관계 하위클래스 is a 상위클래스의 관계로 하위클래스가 상위클래스의 한 종류가 되어야 합니다. 해석 : '하위클래스'는 일종의 '상위클래스'이다. is a 관계일 경우 상속을 받아도 무방합니다. . . 접근방법 - Computer와 Notebook과 Tablet이 서로 is-a관계인지 확인한다. 예제 class Computer { String owner; public Computer(String name){ owner= name; } publi..
[Java] static 상속 - private으로 선언된 상위 클래스의 멤버는 상속은 되지만 하위 클래스에서 접근을 할 수는 없으며, 접근하기 위해서는 메소드를 통해 접근해야 합니다. - 상속의 단계가 몇 단계이든 상관없이 상위 클래스의 멤버에 접근 할 수 있습니다. - 클래스멤버(static)도 상속이 되어 하위클래스에서도 공유할 수 있습니다. . . 예제 class Adder { static int val = 0; public void add(int n){ val += n; } } class AdderFriend extends Adder{ public void friendAdd(int n){ val += n; } public void showVal(){ System.out.println(val); } } class InheriS..