[목차]
01. 서로다른 클래스의 메서드 선언 및 호출
💡
객체 생성 후 객체참조변수에 따라가서 선언된 메서드를 호출합니다.
하나의 패키지내 서로 다른 클래스 (main 메서드 포함 클래스)
➡️ [코드예제] AA01.java
package kr.or.ksmart.a; public class AA01_1 { public static void main(String[] args) { // a 메서드 호출 BB01_1 b = new BB01_1(); b.a(); } }
➡️ [코드예제] AA02.java
package kr.or.ksmart.a; public class AA02_2 { public static void main(String[] args) { User u = new User(); BB02_2 check = new BB02_2(); u.setUid("id001"); u.setUpw("pw001"); u.setUphone("010-0001"); u.setUgender('남'); u.setUage(20); u.setUlevel("판매자"); check.levelCheck(u); } }
➡️ [코드예제] AA03.java
package kr.or.ksmart.a; public class AA03_1 { public static void main(String[] args) { // a메서드 호출 후 리턴 값을 result1 변수에 담아 출력! BB03_1 bb = new BB03_1(); int result1 = bb.a(); String str = bb.b(); char gender = bb.c(); System.out.println(result1); System.out.println(str); System.out.println(gender); } }
➡️ [코드예제] AA04.java
package kr.or.ksmart.a; public class AA04_2 { public static void main(String[] args) { User u02 = new User(); u02.setUid("id002"); u02.setUpw("pw002"); u02.setUphone("010-0002"); u02.setUgender('여'); u02.setUage(30); u02.setUlevel("판매자"); // 판매자 or 구매자 if (u02.getUlevel().equals("판매자")) { System.out.println("상품 등록 가능"); Goods g01 = new Goods(); g01.setPcode("p001"); g01.setUid(u02.getUid()); g01.setPname("노트북"); g01.setPjungsang(2000000); g01.setPhalin(1000000); g01.setPsangse("SW개발용"); BB04_2 bb = new BB04_2(); Order result = bb.test(u02, g01); System.out.println(result); if (result != null) { System.out.println("주문내역이 있다."); TotalPrint tp = new TotalPrint(); tp.oPrint(result); } else { System.out.println("주문내역이 없다."); } } else { System.out.println("상품 등록 불가능"); } } }
하나의 패키지내 서로 다른 클래스 (main 메서드 포함하지 않는 클래스)
➡️ [코드예제] BB01.java (리턴 없고 입력 없는)
package kr.or.ksmart.a; // 5. 리턴 없고 입력 없는 메서드 선언 public class BB01_1 { // 메서드 선언 public void a() { System.out.println("01 a메서드 실행"); } }
➡️ [코드예제] BB02.java (리턴 없고 입력 있는)
package kr.or.ksmart.a; public class BB02_2 { public void levelCheck(User u) { if (u.getUlevel() == "판매자") { TotalPrint tp = new TotalPrint(); Goods g = new Goods(); g.setPcode("p001"); g.setUid(u.getUid()); g.setPname("노트북"); g.setPjungsang(2000000); g.setPhalin(1000000); g.setPsangse("SW개발용"); tp.gPrint(g); }else { System.out.println("판매자 권한이 없어요"); } } }
➡️ [코드예제] BB03.java (리턴 있고 입력 없는)
👉🏻1. User, Goods, Order 타입 2. 메서드 처리과정 3. 리턴 받은 후 처리과정package kr.or.ksmart.a; public class BB03_1 { public int a() { System.out.println("01 a 메서드 실행 a BB03_1.java"); return 10; } public String b() { System.out.println("01 a 메서드 실행 a BB03_1.java"); return "리턴값"; } public char c() { System.out.println("01 a 메서드 실행 a BB03_1.java"); return '여'; } }
➡️ [코드예제] BB04.java (리턴 있고 입력 있는)
package kr.or.ksmart.a; public class BB04_2 { public Order test(User u, Goods g) { System.out.println("test 메서드 실행"); Order o01 = null; User u01 = new User(); u01.setUid("id001"); u01.setUpw("pw001"); u01.setUphone("010-0001"); u01.setUgender('남'); u01.setUage(20); u01.setUlevel("판매자"); // 구매자 or 판매자 if (u01.getUlevel().equals("구매자")) { System.out.println("구매자 권한"); o01 = new Order(); o01.setOcode("o001"); o01.setPcode(g.getPcode()); o01.setUid(u01.getUid()); o01.setOcount(3); o01.setOprice(g.getPjungsang()); o01.setOtotal(o01.getOcount() * o01.getOprice()); o01.setOaddress("금암동"); } else { System.out.println("구매자 권한 없음"); } return o01; } }
02. 서로다른 패키지/클래스 메서드 선언 및 호출
💡
import 패키지명.클래스명; ( . 도트연산자 )
[코드예제] AA01_1.java
package kr.or.ksmart.A; //import kr.or.ksmart.B.BB01_1; // import 타자 치고 패키지명 복사 후 붙여넣기 // . (도트연산자) 타자 치고 클래스명 복사 후 붙여넣기 // ; (세미콜론) 타자 치고 완성 import kr.or.ksmart.B.BB01_1; public class AA01_1 { public static void main(String[] args) { BB01_1 bb = new BB01_1(); bb.a(); } }
[코드예제] BB01_1.java
package kr.or.ksmart.B; // 5. 리턴 없고 입력 없는 메서드 선언 public class BB01_1 { // 메서드 선언 public void a() { System.out.println("01 a메서드 실행"); } }
tag : #java #객체 #클래스 #패키지 #메서드 #선언 #호출 #import
Uploaded by N2T