관리 메뉴

IT journey

15일차 참조변수 본문

끄적끄적/JAVA

15일차 참조변수

step 2021. 7. 17. 16:43
728x90
반응형

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :)

아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다.

14일차 생성자

 

14일차 생성자

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 13일차 추상클래스, 인터페이스 13일차 추상클

step-journey.tistory.com

13일차 추상클래스, 인터페이스

 

13일차 추상클래스, 인터페이스

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 12일차 제어문 3편,배열 2편, 상속 12일차 제어

step-journey.tistory.com

12일차 제어문 3편,배열 2편, 상속

 

12일차 제어문 3편,배열 2편, 상속

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 11일차 제어문 2편, 배열 1편 11일차 제어문 2편

step-journey.tistory.com

11일차 제어문 2편, 배열 1편

 

11일차 제어문 2편, 배열 1편

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 10일차 제어문 1편 10일차 제어문 1편 직접 내

step-journey.tistory.com

10일차 제어문 1편

 

10일차 제어문 1편

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 9일차 연산자(feat. if문) 9일차 연산자(feat. if문

step-journey.tistory.com

9일차 연산자(feat. if문)

 

9일차 연산자(feat. if문)

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 8일차 아스키코드 8일차 아스키코드 직접 내

step-journey.tistory.com

8일차 아스키코드

 

8일차 아스키코드

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 7일차 자바 실습 예제 7일차  자바 실습 예제

step-journey.tistory.com

7일차 자바 실습 예제

 

7일차  자바 실습 예제

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 6일차 자바 소스 코드를 작성하는 규칙 6일차

step-journey.tistory.com

6일차 자바 소스 코드를 작성하는 규칙

 

6일차  자바 소스 코드를 작성하는 규칙

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 아래에 있는 이전 발행글을 참고하시면 소스코드를 작성하는데 도움이 됩니다. 5일차 자바의 자료형(feat.생성자) 5일차 자바

step-journey.tistory.com

5일차 자바의 자료형(feat.생성자)

 

5일차 자바의 자료형(feat.생성자)

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) ★ 꼭 !! 지켜야 할 사항 ★ 아래에 있는 1일차,2일차,3일차,4일차 내용을 우선적으로 보고 오세요. 1일차 1일차 직접 내용 정리

step-journey.tistory.com

4일차 자바의 클래스

 

4일차 자바의 클래스

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) ★ 꼭 !! 지켜야 할 사항 ★ 아래에 있는 1일차,2일차,3일차 내용을 우선적으로 보고 오세요. 1일차 1일차 직접 내용 정리하고

step-journey.tistory.com

3일차

 

3일차

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) ★ 꼭 !! 지켜야 할 사항 ★ 아래에 있는 1일차,2일차 내용을 우선적으로 보고 오세요. 1일차 1일차 직접 내용 정리하고 만든

step-journey.tistory.com

2일차

 

2일차

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) ★ 꼭 !! 지켜야 할 사항 ★ 1일차 내용을 우선적으로 보고 오세요. 1일차 1일차 직접 내용 정리하고 만든 예이니 퍼가실 때는

step-journey.tistory.com

1일차

 

1일차

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 1.1 컴퓨터 1. 종류 데스크탑(Desktop), 노트북(Laptop), 핸드폰(Smart Phone), 테블릿입니다. 2. 구조 입출력 장치(모니터, 키보드, 마우

step-journey.tistory.com

JAVA - 클래스

 

JAVA - 클래스

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) 클래스 ○객체를 만드는 기능을 합니다. ○ 클래스는 객체의 틀이 되는 추상적인 개념이고 객체는 클래스에 정의된 요소들의

step-journey.tistory.com

JAVA-제어문(feat.파일 입출력)

 

JAVA-제어문(feat.파일 입출력)

직접 내용 정리하고 만든 예이니 퍼가실 때는 출처를 남겨주세요 :) ※ 참고사항 제어문에 들어가기 전, 증감연산자, 비교(관계)연산자와 논리연산자에 대해 올린 C언어-연산자 편을 참고하시면

step-journey.tistory.com

JAVA-자료형

 
728x90

함수

리턴형이 없는 함수

[접근제한자] void 함수이름(매개변수)

1. static 이 없는 경우

(1) new 인스턴스를 합니다 => 클래스 이름 참조변수 = new 생성자이름(); 

이 때, 생성자는 만들어 주어야 합니다.

(2) 참조변수.함수이름();

2. static 이 있는 경우

클래스이름.함수이름(); 을 씁니다.

리턴형이 있는 함수

[접근제한자] int(또는 String) 함수이름(매개변수)

1.static 이 없는 경우

(1) new 인스턴스를 합니다.

(2) int(또는 String) 변수명 = 참조변수.함수이름();

(3) System.out.pritln(변수명);

2. static 이 있는 경우

(1) int(또는 String) 변수명 = 클래스이름.함수이름();

(2) 클래스이름.함수이름();

호출해서 쓸 경우

static이 없는 경우

참조변수.함수이름(아규먼트);

static이 있는 경우

클래스이름.함수이름(아규먼트);

 

※ 참고로, 매개변수 자리에 참조변수가 오기도 합니다.

※ 참고로, JVM을 이용해 메모리 값 또는 CPU에 있는 값을 보고 싶을 경우

문자열(String), 정수(int), 날짜(Date), 달력(Calendar), [] , ArrayList, HashMap은 개발자들이 용이하게 쓸 수 있게 하기 위해 데이터타입 참조변수 = 리터럴; 이라고 입력해 준 후 참조변수 값을 출력해주면 입력한 값이 나옵니다. JVM을 이용해 메모리값을 볼 수는 없지만 CPU에 있는 값을 보고 싶을 경우에는System.identityHashCode(Object x) 을 이용하면 됩니다. 그리고 String s 를 new 연산자를 사용하지 않고 같은 리터럴을 초기화 하게 될 때 같은 메모리를 참조하나, new 연산자를 사용한 후 같은 리터럴을 초기화 하게 되면 다른 메모리를 참조합니다.

하지만, 클래스 이름 참조변수 = new 생성자이름(); 를 만들어준 후 참조변수를 출력하면, JVM에 있는 메모리값이 나옵니다. 또한 CPU에 있는 값을 보고 싶을 경우에는 System.identityHashCode(Object x) 을 이용하면 됩니다. 그리고 입력한 값을 보고 싶다면 참조변수.함수이름(아규먼트)를 이용해야 합니다.


자료형

①기초자료형(Primitive Data Type)

문자

(1) 문자-> char

(2) 문자열 -> String : 참조자료형

※ 참고로, 문자열은 + 연산자를 사용해서 문자열을 더할 수 있으나, 아래와 같이 concat이라는 함수를 이용해 문자열을 더하는 것을 추천합니다. 

String ss = "ab";
String sss = "cd";
String s = ss.concat(sss);
System.out.println("sss 의 값은 " + sss);

※ 참고로, 문자열의 함수

- length() 함수는 문자열의 개수를 세주는 함수로, null 값이 오면 컴파일은 되지만 실행이 되지 않으며, ""이 오게 되면 0을 반환합니다.

- trim() 함수는 문자열의 앞, 뒤의 공백 문자를 제거하나, 중간에 있는 문자열은 공백제거를 하지 않는 함수입니다.

 

숫자

(1) 정수 byte short int long

(2) 실수 float double

(3) 논리 boolean

②Wrapepr Class (기초자료형에 대한 클래스 표현) <- 자바에서 유일하게 객체아닌 것

(1) 문자 -> Character

(2) 정수 Byte Short Integer Long

(3) 실수 Float Double

(4) 논리 Boolean

③ 참조자료형

(1) 빌트인 클래스

(2) 일반 클래스

(3) 추상 클래스

추상함수와 일반함수

추상함수를 구현할 때는 상속 후 @Override 어노테이션 기술을 쓴 후 오버라이드합니다. 

(4) 인터페이스 클래스

추상함수만 씁니다.

(5) 파이날 클래스

(6) String

(7) 사용자 정의 클래스

※  참고로, 바이트코드(클래스  코드)를 메모리에 올리는 방법은 static, new, 상속이 있습니다.


변수

 

1.멤버변수

클래스 안, 함수 밖에 선언되는 변수로, 선언과 동시에 초기화 하지 않고 생성자가 초기화 해줍니다.

(1) 상수

public static final 데이터타입 XXX_XXXX = 리터럴; 

이 때, final 키워드가 있다는 것은 변하지 말라는(상속하지 말라는) 의미입니다.

(2) 클래스변수

static 데이터타입 변수명;

(3) 멤버 변수

데이터타입 변수명;

(4) 전역변수

public 데이터 타입 변수명;

2.지역변수

함수 블럭에 선언하는 변수입니다. 이 값을 함수 밖으로 내보내기 위해서는 return 키워드르 써야 합니다.

초기화 할 때는 기초자료형에 있는 정수(byte,short,int) 의 경우에는 0, 실수 (float,double) 의 경우에는 0.0,문자(char)의 경우는 \u0000 으로 디폴트 값으로 하며, 참조자료형 중 문자열(String)은 "", null 에 이용됩니다.

 

 

728x90
반응형
Comments