게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[본삭금] 자바 클래스 질문 (초보주의)
게시물ID : programmer_10297짧은주소 복사하기
작성자 : 오늘너무
추천 : 0
조회수 : 281회
댓글수 : 2개
등록시간 : 2015/05/21 01:03:26
옵션
  • 본인삭제금지
package ObjectEx;
public class TvTest {
  //TV의 속성(멤버변수)
 
 String color; //색상
 boolean power; //전원상태
 int channel; //채널
 
  //TV의 기능(메서드)
  void power(){ power=!power;}
  void channelUp(){++channel;}
  void channelDown(){--channel;}
 
ObjectEx;
public class TV3 {
 public static void main(String[] args) {
  // TODO Auto-generated method stub
    TvTest t1=new TvTest();
    TvTest t2=new TvTest();
    System.out.println("t1의 channel값은"+t1.channel+"입니다");
    System.out.println("t2의 channel값은"+t2.channel+"입니다");
    
    t2=t1;
    t1.channel=7;
    System.out.println("t1의 채널값을 7로 변경했습니다.");
    System.out.println("t1 채널값은"+t1.channel+"입니다");
    System.out.println("t2 채널값은"+t2.channel+"입니다");
 }
}
// 중요하고 보고가자 t는 TvTest의 "참조변수"이다 즉 주소를 가리키는 것이다
// t2=t1은 t2에 t1에 주소값을 넣은 것이므로 원래 가지고 있던 t2의 주소값은 없어지고
// t1이 가지고 있는 주소값을 참고하게 된다.
// 이로인해 1개의 인스턴트(TvTest)를 여러 참조변수가 가리키는것은 가능하지만
// 여러개의 인스턴트(TvTest)가 참조변수를 가리키는것은 불가능하다.
 
주석은 제가 필기한 것입니다.
 
t1과 t2가 참조변수라고 했습니다 참조변수는 주소값을 저장하는 것인데
t1과 t2 모두 TvTest라는 클래스의 주소를 참조 하고있지 않습니까?
t2=t1 이라고해도 t1과 t2가 가리키는 주소의 값은 같은데
어째서 주석2번째 말처럼 t2의 주소값이 사라지는 건가요??
 
t1과 t2는 TvTest라는 주소값을 참고하여 새로운 t1,t2에 개인주소를 가지는 건가요????
 
 
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호