JAVA(77)
-
컬렉션_프레임 워크
*실습 많이 하자. (어떻게, 언제, 왜) 써? 이걸 이해 해보자. 컬렉션이란? 여러 데이터 모아 놓은 것 프레임 워크? 표준화, 정형화된 체계적 프로그래밍 방식. 프레임 워크가 요구하는 방식대로 작성하면 프레임워크가 알아서 처리 해줌. 단점 - 프레임워크의 요구 방식대로 작성해야 함. (자유도가 떨어짐) 장점 - 생산성이 올라감. - 유지 보수가 쉬워짐. 컬렉션 프레임워크? - 다수의 데이터를 다루기 위한 표준화된 프로그래밍 방식. - 컬렉션을 쉽고 편리하게 다루기 위한 다양한 클래스 제공. - java.util 패키지에 포함 돼 있음. jdk 1.2 부터 표준화 되었다고 함. 그래서 뭐가 있지? 컬렉션 클래스 다수의 데이터를 저장할 수 있는 클래스( Vector, ArrayList, HashSet 등..
2024.02.13 -
다형성_다형적 참조
이번엔 OOP(객체 지향 프로그래밍)의 특징 캡슐화 상속 추상화 다형성 중, 다형성에 대해 알아보자. 다형성(Polymorphism)이란? 다양한 형태. 여러 형태. 프로그래밍에서 다형성이라 함은, 한 객체가 여러 타입의 객체로 취급될 수 있는 성질을 뜻한다. 보통 하나의 객체는 하나의 형태로 고정 돼 있다. 그러나 여기에 다형성이란 성질이 접목되면, 하나의 객체가 다양한 타입으로 사용될 수 있게 된다. 다형적 참조 클래스 간에 상속 관계가 존재한다면, 상위(Super)는 하위(Sub) 타입을 참조할 수 있게 된다. 여기서 상속 관계라 함은, - 클래스 & 클래스 상속(extends) - 클래스 & 인터페이스(implements) - 인터페이스 & 인터페이스 (implements) 등이다. 아래는 내가 ..
2024.02.06 -
메서드 오버로딩(Overloading) ? 메서드 오버라이딩(Overriding)?
메서드 오버로딩 ㄴ 매개변수가 다른 메서드를 여러 개 정의 하는 것. ㄴ 메서드 이름이 같아야 함. ㄴ loading 은 과적. 물건을 쌓는다는 의미 ㄴ 칸마다 기능이 다른 기차를 생각하면 편함 YH 특급열차 머리 침실 짐칸 머리 필요에 의해(인기가 너무 좋아져서) 칸(파라미터) 수를 늘림. YH 특급열차 머리 식당칸 침실 예체능실 영화관 객실 머리 메서드 오버로딩 ㄴ 하위 클래스에서 상위 클래스의 메서드를 재정의 하는 과정. 상속 관계에서 사용됨. ㄴ 뭔가 얹어서 덮어씌운는 것. ㄴ 위에서 내려다 본 케익 생각하면 편함. ㄴ 시작은 초코 케잌으로 시작했으나, 끝은 딸기케잌 일지니!! 메서드 오버라이딩 조건 - 메서드 이름이 같아야 함. - 파라미터 타입, 순서, 개수가 같아야 함. - 반환타입이 같아야..
2024.01.28 -
상속_메서드 오버라이딩
상속을 통한 코드 재사용에 대해 계속해서 학습중이다. public class SuperAnimal { int legCount; public void move() { System.out.println("동물은 움직입니다."); } public void eat() { System.out.println("먹습니다."); } public void breath() { System.out.println("동물은 숨도 쉬죠."); } } public class AnimalMain { public static void main(String[] args) { SubCheetah cheetah = new SubCheetah(); cheetah.eat();// 먹습니다. cheetah.move();// 동물은 움직입니다. ..
2024.01.28 -
상속_기능추가
이번 내용 별 거 없다. public class SuperAnimal{ int legCount; public void move() { System.out.println("동물은 움직입니다."); } public void eat() { System.out.println("먹습니다."); } public void breath() { System.out.println("동물은 숨도 쉬죠."); } } 기존엔 move(), eat() 만 있었는데, 필요에 의해 breath() 를 추가 했다. 이를 통해 SuperAnimal 을 상속 받는 모든 클래스들은 breath() 를 사용할 수 있게 된다. 뭐 그런 내용이다. SubBird bird = new SubBird(); bird.eat(); bird.move();..
2024.01.28 -
상속_메모리 구조
김영한 님께서 말씀하시길. 정말정말 정말 중요한 내용이니 꼭 이해 하랍신다. SubBird bird = new SubBird(); new SubBird()를 호출하면 어떤 일이 벌어질까? SubBird 의 인스턴스가 생성된다. public class SubBird extends SuperAnimal{ public void fly() { System.out.println("새는 하늘을 날지."); } } 여기서 SubBird 는 SuperAnimal 클래스를 상속한다. SuperAnimal 클래스의 코드를 재'사용' 한다는 뜻이다. SuperAnimal 클래스를 사용! 코드를 사용하려면 뭐다? 인스턴스를 생성해야 한다. 결론 - 상속 관계를 갖는 하위 클래스의 인스턴스를 생성하면, 해당 클래스의 상위 클래..
2024.01.28