반응형 IT/JAVA26 JAVA - Collection 2) 제네릭 제네릭 지금까지 클래스는 필드에서 정해진 타입만 담을수 있었음class BasketString { private String item; ... }class BasketInteger { private int item; ... }class BasketChar { private char item; ... }class BasketDouble { private double item; ... }이런식으로 타입마다 클래스를 만들어야 함 안에 있는 요소의 타입을 만드는 시점에 동적으로 타입? 지정할수 있음 타입을 약간 미지로 남겨놓는 형태 -> ex) class Basket { private T item; public Basket(T item) { this.item = item; } .. 2024. 11. 29. JAVA - Collection 1) 열거형 열겨형 - 상수 집합 / 상태처리 할때 많이 사용함 열거형여러 상수들을 보다 편리하게 선언할수 있는 문법 요소상수란? 변하지 않는 것 (요일, 계절, 동서남북, 12개월...) final 키워드 사용실제로 쓸때 현실세계에 쓰기보단 상태에 많이 사용(회원의 상태, 상품의 상태, 상품의 옵션...등등) class Seasons { public static final Seasons SPRING = new Seasons(); public static final Seasons SUMMER = new Seasons(); public static final Seasons FALL = new Seasons(); public static final Seasons WINTER = new Seaso.. 2024. 11. 29. JAVA - 객체 지향 심화 3) 추상화 추상 - 사물이나 표상을 어떤 성질, 공통성, 본질에 착안하여 그것을 추출하여 파악하는것추상화란기존 클래스들의 공통적인 요소들을 뽑아서 상위 클래스를 만들어 내는 것이렇게 공통적인 속성과 기능을 모아서 정의해 주면 코드의 중복을 줄일 수 있고, 보다 효과적으로 클래스 간의 관계를 설정할 수 있으며, 유지/보수가 용이해짐 자바에서는 주로 추상 클래스와 ★ 인터페이스 ★ 라는 문법 요소를 사용해서 추상화를 구현두가지로 나누는 이유는? 클래스를 상속받는건 하나이지만 인터페이스는 인크리먼트(구현) 가 가능하기에 abstract 제어자 abstract = 미완성abstract 는 주로 클래스와 메서드를 형용하는 키워드로 사용되는데, 메서드 앞에 붙은 경우를 ‘추상 메서드(abstract method)’, 클래.. 2024. 11. 27. JAVA - 객체 지향 심화 2) 캡슐화 캡슐화특정 객체안에 관련된 속성과 기능을 하나의 캡슐로 만들어 데이터를 외부로 부터 보호함 캡슐화를 해야 하는 이유- 데이터 보호의 목적- 내부적으로만 사용되는 데이터에 대한 불필요한 외부 노출을 방지 즉 가장 큰 장점은 정보 은닉! 보통 캡슐화 하는 방법1. 접근제어자 변경2. getter , setter 메서드 패키지특정한 목적을 공유하는 클래스와 인터페이스의 묶음 -같은 패키지 안에 있을때// 패키지를 생성했을 때package practicepack.test; // 패키지 구문 포함. 패키지가 없다면 구문 필요없음public class PackageEx {} -다른 패키지를 가져오고 싶을때1. 일반 방법package practicepack.test2; // import 문을 사용하지 않는 경우, .. 2024. 11. 27. 이전 1 2 3 4 5 6 7 다음 반응형