public class OverloadingMain {
public static void main(String[] args) {
Overloading o1 = new Overloading();
o1.method();
o1.method(123);
o1.method(123,456);
o1.method('A');
o1.method('A','B');
}
}
----------------------------------------------------
/*
오버로딩(메쏘드의 다중정의)
1. 자바 다형성구현기법 중의하나이다.
2. 정의: 같은메쏘드 이름으로 여러개의 메쏘드를 정의하는방법
- 규칙:
* 메쏘드의 이름이 같아야한다.
* 메쏘드의 인자의 숫자가 다르거나
* 메쏘드의 인자의 타입이 달라야한다.
* 메쏘드의 리턴타입,접근지정자는 상관없다.
*/
public class Overloading {
public void method(){
System.out.println("public void methood()");
}
//인자의 수
public void method(int a){
System.out.println("public void methood(int a)");
}
public void method(int a,int b){
System.out.println("public void methood(int a, int b)");
}
//인자의 타입
public void method(char a){
System.out.println("public void methood(char a)");
}
public void method(char a,char b){
System.out.println("public void methood(char a, char b)");
}
/*
//메쏘드 리턴타입(x)
public int method1(){
return 0;
}
public boolean method1(){
return true;
}
*/
public static void main(String[] args) {
Overloading o1 = new Overloading();
o1.method();
o1.method(123);
o1.method(123,456);
o1.method('A');
o1.method('A','B');
}
}
-----------------------------------------------------
/*
* 객체비교
*/
public class ObjectCompare {
public static void main(String[] args) {
//기본형비교
int a=10;
char c='A';
boolean b = true;
if(a>0){
System.out.println(a+" > 0");
}else if(a<0){
System.out.println(a+" < 0");
}else if(a==0){
System.out.println(a+" = 0");
}
if(c>20){
System.out.println(c+" > 20");
}
if(b==true){
System.out.println(b+" = true");
}
//객체형비교(같은 타입의 객체형끼리만 가능)
Member member1 = new Member();
member1.setNo(1);
member1.setName("LEE");
member1.setAge(34);
member1.setAddress("화성인");
Member member2 = new Member();
member2.setNo(2);
member2.setName("PARK");
member2.setAge(43);
member2.setAddress("목성인");
if(member1==member2){
System.out.println("member1주소==member2주소");
}else if(member1!=member2){
System.out.println("member1주소!=member2주소");
}
Member member3 = member1 ;
if(member3==member1){
System.out.println("member3주소와 member1주소는 같다");
System.out.println("member3와 member1은 같은 객체를 참조한다");
}
/*
* 상수
* -정수형상수: 1, 2, 3
* -실수형상수: 23.45, 3,14
* -문자형상수: '김', 'A'
* -논리형상수: true, false
*
* -객체형상수: null,
* *null : 주소없다
*/
/*
* 모든 로칼변수는 초기화하여야한다.
*/
Member member4 = null;
if(member4 == null){
member4=member2;
member4.print();
}else if(member4!=null){
member4.print();
}
/*
* 모든멤버객체는 메모리수집의 대상이되며 사용불가능
*/
member1=null;
member2=null;
member3=null;
member4=null;
}
}
/*
* 객체비교
*/
public class ObjectCompare {
public static void main(String[] args) {
//기본형비교
int a=10;
char c='A';
boolean b = true;
if(a>0){
System.out.println(a+" > 0");
}else if(a<0){
System.out.println(a+" < 0");
}else if(a==0){
System.out.println(a+" = 0");
}
if(c>20){
System.out.println(c+" > 20");
}
if(b==true){
System.out.println(b+" = true");
}
//객체형비교(같은 타입의 객체형끼리만 가능)
Member member1 = new Member();
member1.setNo(1);
member1.setName("LEE");
member1.setAge(34);
member1.setAddress("화성인");
Member member2 = new Member();
member2.setNo(2);
member2.setName("PARK");
member2.setAge(43);
member2.setAddress("목성인");
if(member1==member2){
System.out.println("member1주소==member2주소");
}else if(member1!=member2){
System.out.println("member1주소!=member2주소");
}
Member member3 = member1 ;
if(member3==member1){
System.out.println("member3주소와 member1주소는 같다");
System.out.println("member3와 member1은 같은 객체를 참조한다");
}
/*
* 상수
* -정수형상수: 1, 2, 3
* -실수형상수: 23.45, 3,14
* -문자형상수: '김', 'A'
* -논리형상수: true, false
*
* -객체형상수: null,
* *null : 주소없다
*/
/*
* 모든 로칼변수는 초기화하여야한다.
*/
Member member4 = null;
if(member4 == null){
member4=member2;
member4.print();
}else if(member4!=null){
member4.print();
}
/*
* 모든멤버객체는 메모리수집의 대상이되며 사용불가능
*/
member1=null;
member2=null;
member3=null;
member4=null;
}
}
오버로딩은 파라미터의 장난?
답글삭제