일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- Eminem
- 바람의나라연
- 일본패치
- 매일영어단어외우기
- 미국주식
- 모바일바람의나라
- 아이유
- 타라옷
- 폭선우의무덤
- 나스닥
- 영어단어
- 체마1등
- 주작의용천제일검
- 레어닉
- 보물수호
- 수지
- 어린궁기
- 피렌체
- 매드클라운
- 북천황의감옥
- 2차신수
- 페그오
- 걸스데이
- 매일영어단어
- 페이트그랜드오더
- 바람의나라
- 막피범
- 돌림판이벤트
- 에미넴
- 2차승급
- Today
- Total
티스의 이야기
자바의 기초 레퍼런스타입과 heap 본문
자바의 기초 레퍼런스타입과 heap 정말 어려운 부분입니다 자바의 기초적인 이해 stack이 아니라 heap에다가 넣음!?
//int [] ar = 데이터 타입 (기본형이 아님)
//지역변수는 메서드가 생성되고 종료되면 메모리에서 사라짐
//if문이나 for문에서 생성된 지역변수는 밖에서 안찍힘
//지역변수는 프린트하기전에 초기화를 해줘야 함(값을 입력함)
//레퍼런스 데이터타입을 찍으면 주소값이 나옴 (참조변수)
//heap은 모든 프로그램이 공통으로 사용하는 영역
heap에 있는 것을 가져다가 쓰려면 주소값을 알아야 한다
그래서 프린트를 하면 주소값이 나온다
int [] ch = new int[num];
int a = 10;
System.out.println("ch");
라고 치면 주소값이 나온다
System.out.println("a");
라고 치면 값이 나온다.
기본형과 레퍼런스 타입의 차이점
다차원 배열의 선언과 생성
int [] [] ar = new [5] [3] ;
3개 짜리를 5개 만들겠다는 뜻
학생 10명이 있는데 각각의 국어 영어 수학 점수를 받아서 총점과 평균을 받으려고 한다.
(어딘가의 변수에 저장이 되어야 함)
int kor , int eng , int math , int sum , int avr
int [] s1 = new int [5];
int [] s2 = new int [5];
String [] name = new String[10]
객체지향언어의 특징
코드의 재사용성이 높다 (한번 만든 코드를 다시 사용)
코드의 관리가 쉬워졌다.
(객체지향에서는 하나를 바꾸면 나머지도 자동으로 바뀐다)
신뢰성이 높다
클래스의 정의 - 클래스란 객체를 정의해 놓은 것이다
클래스의 용도 - 클래스는 객체를 생성하는데 사용된다.
객체의 정의 - 실제로 존재하는 것. 사물 또는 개념.
객체의 용도 - 객체의 속성과 기능에 따라 다름.
클래스 |
객체 |
제품 설계도 |
제품 |
tv 설계도 |
tv |
붕어빵기계 |
붕어빵 |
Student@659e0bfd 는 suji의 주소값
heap영역에다가 suji를 저장
레퍼런스데이터타입은 // 모두 4바이트
저장공간을 heap에서 만들고
시작점의 주소를 수지에게 보여주는 것임
(suji를 프린트 하면 그 주소값이 프린트)
여기서 suji는 참조변수
new 라는게 들어가면 heap에다가 할당을 해달라고 하는 것임
수지 안에 있는 변수들이 모두 저장공간이 생김
(멤버변수)
(#멤버변수들은 클래스 안에 있는 변수들 (eng/math/kor))
new로 저장공간이 할달될때
선언만 해도 자동으로 값이 선정이 됨
(멤버변수의 기본데이터)
초기화를 java jdk가 저절로 해줌
모든 레퍼런스 데이터 초기값 = null
int = 0
double = 0.0
char = "" (빈공간)
변수명은 한글로 가능함(오류가 날 가능성이 있음)
'프로그래밍' 카테고리의 다른 글
제어자(modifier) 자바입문 (0) | 2015.07.21 |
---|---|
메서드 오버로딩(method overloading) (0) | 2015.07.20 |
자바 클래스 메서드 이해하기 (0) | 2015.07.20 |
자바(java)클래스(class) 이해하기 (0) | 2015.07.16 |
자바(java)프로그래밍 국비지원 수업 입문 (0) | 2015.07.16 |