패키지명.클래스명@메모리 (RAM) 상에 올라온 주소값
메모리(RAM) 의 주소 알아내기
Ex) new Member() => 메모리에 로딩 (객체화)
=> class 를 CPU(RAM) 에 저장하려면 new Member(); 방식으로 저장을 반복
=> 이 방법을 제어하기 위해 ' Member lssMbr = new Member(); ' 방법 이용
=> 이때, lssMbr 은 ' 메모리 참조변수 ' 라고 부른다.
1. instance (인스턴스) 변수
- ' non static 변수 ' 라고도 한다.
- 클래스가 메모리 (RAM) 에 가서 실제 사용가능한 객체로 되어진 상태
- 서로 다른 instance 끼리 공유 X, 각자 자기의 instance 내에서만 사용
- 인스턴스화 (== 객체생성)
Main_01 ma1 = new Main_01();
MyUtil.current_time_print();
MyUtil util = new MyUtil();
util.current_time_print();
=> void : 인스턴스 method(메소드)
- return 값이 없다 !
void print_info(){
System.out.println();
}
기존에 있는 메소드 활용 방법
void info_print(){
System.out.println("===" + name + "님의 회원정보" + "\n"
+ "1. 아이디 : " + userid + "\n"
+ "2. 비밀번호 : " + passwd + "\n"
+ "3. 성명 : " + name + "\n"
+ "4. 나이 : " + age + "\n"
}
// day02.Member.java
void update(String userid, String passwd,String name, int age){
System.out.print(">>> 변경전 정보 <<< ");
info_print();
this.userid = userid;
this.passwd = passwd;
this.name = name;
this.age = age;
System.out.println(">>> 변경후 정보 <<< "
info_print();
}
// day02.Main_Member.java
Member java_mbr = new Member("java","abcd","자바","20);
java_mbr.info_print();
java_mbr.update("javac","wxyz","자바씨",25);
자바에서 소괄호 ' ( ) ' 가 나오는 것은 두가지 경우 뿐 !!
- 생성자(constructor)에서 사용
- method(메소드)에서 사용
클래스를 생성할 때 생성자를 표기한 것이 없는 경우
- 기본생성자가 생략된 경우
Ex) Member( ){ }- 파라미터(==매개변수)가 있는 생성자를 선언한 경우, 기본생성자 자동 삭제됨!!
-> 생략되어있는 것이 아닌, 파라미터 있는 생성자 선언 시 소멸
Member( ){ }
Member(String a, String b, String c, int d, int e){
}
Member(String userid, String passwd, String name, String email int age, int point){
this(userid,passwd,name,age,point);
this.email = email;
}
my.day01 -> HelloTest, Member_main, Member
my.day02 -> Main_01, Main_02, Main_03
my.util -> MyUtil
my.day02.b.constructor -> Main_Member, Member