1. 오버로딩(로딩을 하나를 초과하여 받는 경우)
같은 이름의 메소드들이 매개변수의 유형이나 개수에 따라서 다양한 유형의 호출에 응답
Overloading.java |
test.java |
public class Overloading { void test(){ System.out.println("매개변수 없음"); } void test(String s){ System.out.println("매개변수 " + s); } void test(String s, int i){ System.out.println("매개변수 " + s + ", " + i); } } |
public class test { public static void main(String[] args){ Overloading ol = new Overloading();
ol.test(); ol.test("test"); ol.test("test", 10); } } |
2. 오버라이딩
Manager가 Employee을 상속을 받은 후 print 메소드를 생성하면 Employee의 print가 아닌 Manager의 print가 실행되게 되는데 이처럼 상속관계에 있는 클래스 간에 이름이 같은 메소드(print 메소드)를 재정의해서 사용하는 것을 오버라이딩이라고 한다.
Employee.java , Manager.java |
test.java |
public class Employee { String a = "";
public void print(){ System.out.println("출력 안함"); } } public class Manager extends Employee{ public void print(){ System.out.println(a + " 출력"); } } |
public class test { public static void main(String[] args){ Manager m = new Manager ();
m.a = "rding"; m.print(); } } |
'프로그래밍 > JAVA' 카테고리의 다른 글
JAVA Collections Framework (0) | 2017.03.26 |
---|---|
객체 지향 프로그래밍(Object-Oriented Programming) (0) | 2017.03.23 |