728x90
반응형
[ 오버로딩 vs 오버라이딩 ]
👀 오버로딩
: 두 메서드가 같은 이름을 갖고 있으나 인자의 수나 자료형이 다른 경우
public double solve(Circle c){ ... }
public double solve(Square s){ ... }
👀 오버라이딩
: 상위 클래스의 메서드와 이름과 용래(signature)가 같은 함수를 하위 클래스에 재정의하는 것
public abstract class Shape{
public void printMe(){
System.out.println("I am a shape.");
}
public abstract double computeArea();
}
public class Circle extends Shape{
private double rad = 5;
public void printMe(){
System.out.println("I am a circle.");
}
public double computeArea(){
return rad * rad * 3.15;
}
}
[ 컬렉션 프레임워크 ]
👀 ArrayList
: 동적으로 크기가 조절되는 배열
ArrayList al = new ArrayList();
al.add("one");
al.add(0, "two");
al.set(0, "zero");
System.out.println(al); /* [zero, one] */
al.remove("one");
System.out.println(al); /* [zero] */
al.clear();
System.out.println(al); /* [] */
👀 Vector
: ArrayList와 비슷하지만 동기화되어 있음
Vector v = new Vector();
v.add("one");
v.add(0, "zero");
v.add(null);
v.set(2, "two");
System.out.println(v); /* [zero, one, two] */
v.remove(2);
System.out.println(v); /* [zero, one] */
v.clear();
System.out.println(v); /* [] */
👀 LinkedList
: 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식의 자료구조
LinkedList ll = new LinkedList();
ll.add("one");
ll.addFirst("zero");
Iterator iter = ll.iterator();
while(iter.hasNext()){
System.out.println(iter.next());
}
👀 HashMap
: Map의 일종으로 key와 value의 쌍으로 이루어진 데이터를 보관하는 자료구조
HashMap map = new HashMap();
map.put("one", "uno");
map.put("two", "dos");
System.out.println(map.get("one")); /* uno */
반응형
'프로그램 개발 > 미분류' 카테고리의 다른 글
[코딩 인터뷰]지식 기반 문제 - 데이터베이스 (0) | 2023.01.12 |
---|---|
[코딩 인터뷰]지식 기반 문제 - Java 문제 (0) | 2023.01.11 |
[코딩 인터뷰]지식 기반 문제 - C와 C++ 문제 (0) | 2023.01.06 |
[코딩 인터뷰]지식 기반 문제 - C와 C++ (0) | 2023.01.05 |
[코딩 인터뷰]개념과 알고리즘 - 정렬과 탐색 (1) | 2023.01.03 |