Java85 42.제네릭 메서드 활용 제네릭 메서드란? - 자료형 매개변수를 메서드의 매개변수나 반환 값으로 가지는 메서드 - 자료형 매개 변수가 하나 이상인 경우도 있음 - 제네릭 클래스가 아니어도 내부에 제네릭 메서드는 구현하여 사용할 수 있음 - public 반환형 메서드 이름(자료형 매개변수......){} 제네릭 메서드의 활용 예 - 두 점(top,bottom)을 기준으로 사각형을 만들 때 사각형의 너비를 구하는 메서드를 만들어 보자 - 두 점은 정수인 경우도 있고, 실수인 경우도 있으므로 제네릭 타입을 사용하여 구현한다. - Point.java public class Point{ T x; V y; Point(T x, V y){ this.x = x; this.y = y; } public T getX() { return x; } pu.. 2022. 5. 30. 41.T extends 클래스 상위 클래스의 필요성 - T 자료형의 범위를 제한 할 수 있음 - 상위 클래스에서 선언하거나 정의하는 메서드를 활용할 수 있음 - 상속을 받지 않는 경우 T는 Object로 변환되어 Object 클래스가 기본으로 제공하는 메서드만 사용가능 T extneds 를 사용한 프로그래밍 - GenericPrinter 에 material 변수의 자료형을 상속받아 구현 - T에 무작위 클래스가 들어갈 수 없게 Material 클래스를 상속받은 클래스로 한정 2022. 5. 27. 40. 무엇이든 담을 수 있는 제네릭(Generic)프로그래밍 제네릭 자료형 정의 - 클래스에서 사용하는 변수의 자료형이 여러 개 일 수 있고, 그 기능(메서드)은 동일한 경우 클래스의 자료형을 특정하지 않고 추후 해당 클래스를 사용할 때 지정할 수 있도록 선언 - 실제 사용되는 자료형의 변환은 컴파일러에 의해 검증되므로 안정적인 프로그래밍 방식 - 컬렉션 프레임워크에서 많이 사용되고 있음 제네릭 타입을 사용하지 않는 경우의 예 - ThreeDPrinter1.java(재료가 powder인 경우) public class ThreeDPrinter1 { private Powder material; public Powder getMaterial() { return material; } public void setMaterial(Powder material) { this.m.. 2022. 5. 27. 4.스택(Stack) 구현 Stack의 특징 - 맨 마지막 위치(top)에서만 자료를 추가, 삭제, 꺼내올 수 있음(중간의 자료를 꺼낼 수 없음) - Last In First Out (후입선출) 구조 - 택배 상자가 쌓여있는 모양 - 가장 최근의 자료를 찾아오거나 게임에서 히스토리를 유지하고 이를 무를때 사용할 수 있음 - 함수의 메모리는 호출 순서에 따른 stack 구조 - jdk 클래스 : Stack 배열을 활용한 stack 구현 - MyArrayStack.java public class MyArrayStack { MyArray arrayStack; int top; public MyArrayStack() { top = 0; arrayStack = new MyArray(); } public MyArrayStack(int size.. 2022. 5. 27. 이전 1 ··· 7 8 9 10 11 12 13 ··· 22 다음