클래스와 객체 전역변수 값 setting 및 getting
ex)
회원관리 클래스 틀에 아이디,비밀번호,이름,이메일 데이터가 담겨있다.
회원관리 클래스를 통해 새로운 객체가 생성되면 새로운주소 1번이 생성되고,
그 주소1번안 데이터영역에는 아이디,비밀번호,이름,이메일 데이터가 있고 메소드영역은 모른다.
* id값 id001 넣기 (셋팅)
- 1번 주소값을 찾아가서 id에 id001값을 setting 한다.
* id값 id001 꺼내오기 (겟팅)
- 1번 주소값을 찾아가서 id001값을 getting 한다.
User Class data type으로 u01객체참조변수를 선언하고
User()생성자 메서드를 호출해서 새로운 객체를 생성하면
새로운 주소(주소1)가 생성되고 data 영역과 method영역이 생긴다
생성된 주소값(주소1) 을 u01객체참조변수에 할당 한다
- 회원관리 클래스 틀 user클래스
package kr.or.ksmart.A;
//User(회원관리 클래스 틀)
public class user {
//field(필드) = Member = Member field
//전역변수(global variable)
//프로퍼티(property)
String uid;
String upw;
String uphone;
char ugender;
int uage;
String ulevel;
}
- 회원관리 클래스 틀 Goods클래스
package kr.or.ksmart.A;
public class Goods {
String pcode;
String uid;
String pname;
int pjungsang;
int phalin;
String psangse;
}
- 회원관리 클래스 틀 Order클래스
package kr.or.ksmart.A;
public class Order {
String ocode;
String pcode;
String uid;
int ocount;
int oprice;
int ototal;
String oaddress;
}
package kr.or.ksmart.A;
public class AA01 {
public static void main(String[] args) {
user u01 = new user();
user u02 = new user();
System.out.println(u01 + "<- u01");
System.out.println(u01.uid + "<- u01.uid 01");
u01.uid = "id001";
u01.upw = "pw001";
u01.uphone = "010-0001";
u01.ugender = '남';
u01.uage = 20;
u01.ulevel = "구매자";
uPrint(u01);
u02.uid = "id002";
u02.upw = "pw002";
u02.uphone = "010-0002";
u02.ugender = '여';
u02.uage = 30;
u02.ulevel = "판매자";
uPrint(u02);
Goods g01 = new Goods();
g01.pcode = "p001";
g01.uid = u02.uid; //
g01.pname= "노트북";
g01.pjungsang = 2000000;
g01.phalin = 1000000;
g01.psangse = "SW개발용";
gPrint(g01);
Order o01 = new Order();
o01.ocode = "o001";
o01.pcode = g01.pcode;
o01.uid = u01.uid;
o01.ocount = 3;
o01.oprice = g01.pjungsang;
o01.ototal = o01.ocount * o01.oprice;
o01.oaddress = "금암동";
oPrint(o01);
}
public static void oPrint(Order geto) {
System.out.println("--- 주문 내역 시작 ---");
System.out.println("주문코드" + geto.ocode);
System.out.println("상품포드" + geto.pcode);
System.out.println("구매자id" + geto.uid);
System.out.println("주문수량" + geto.ocount);
System.out.println("주문단가" + geto.oprice);
System.out.println("결제금액" + geto.ototal);
System.out.println("배송주소" + geto.oaddress);
System.out.println("--- 주문 출력력 끝 ---");
}
public static void gPrint(Goods getg) {
System.out.println("--- 상품출력 시작 ---");
System.out.println("상품코드: " + getg.pcode);
System.out.println("판매자id: " + getg.uid);
System.out.println("상품이름: " + getg.pname);
System.out.println("상품가격: " + getg.pjungsang);
System.out.println("정상가격: " + getg.phalin);
System.out.println("할인가격: " + getg.psangse);
System.out.println("--- 상품출력 끝 ---");
}
//회원 출력 메서드 선언
// user getu = kr.or.ksmart.A.user@7852e922;
// user getu = user클래스 통해 생성된 객체의 주소값;
public static void uPrint(user getu) {
System.out.println("--- 회원내역 시작 ---");
System.out.println("회원아이디: " + getu.uid);
System.out.println("회원비번: " + getu.upw);
System.out.println("회원연락처: " + getu.uphone);
System.out.println("회원성별: " + getu.ugender);
System.out.println("회원나이: " + getu.uage);
System.out.println("회원권한: " + getu.ulevel);
System.out.println("--- 회원내역 끝 ---");
}
}
<결과>
kr.or.ksmart.A.user@2401f4c3<- u01
null<- u01.uid 01
--- 회원내역 시작 ---
회원아이디: id001
회원비번: pw001
회원연락처: 010-0001
회원성별: 남
회원나이: 20
회원권한: 구매자
--- 회원내역 끝 ---
--- 회원내역 시작 ---
회원아이디: id002
회원비번: pw002
회원연락처: 010-0002
회원성별: 여
회원나이: 30
회원권한: 판매자
--- 회원내역 끝 ---
--- 상품출력 시작 ---
상품코드: p001
판매자id: id002
상품이름: 노트북
상품가격: 2000000
정상가격: 1000000
할인가격: SW개발용
--- 상품출력 끝 ----
-- 주문 내역 시작 ---
주문코드o001
상품포드p001
구매자idid001
주문수량3
주문단가2000000
결제금액6000000
배송주소금암동
--- 주문 출력력 끝 ---
Order클래스에 있는 구매단가
-
Goods클래스를 통해 생성된 객체 내 정상가 2000000 값을 꺼내서
Order클래스를 통해 생성된 객체 내 구매단가 에 셋팅한다.
'개발자 수강노트 > Java /Spring' 카테고리의 다른 글
수강노트 - 자바 클래스 선언 및 호출 (5) (0) | 2022.07.31 |
---|---|
수강노트 - 자바 클래스 선언 및 호출 (4) (0) | 2022.07.31 |
수강노트 - 자바 클래스 선언 및 호출 (2) (0) | 2022.07.31 |
수강노트 - 자바 클래스 선언 및 호출 (1) (0) | 2022.07.31 |
[Spring boot / mysql ] spring boot + DB연동 (1) (0) | 2022.07.29 |
댓글