STUDY/JAVA

230329 공부기록

꾸양! 2023. 3. 30. 00:36

* 배열

- 4개 크기의 일차원 정수배열

int[] array1 = new int[4];

- 3행 4열의 2차원 정수배열

int[][] array2 = new int[3][4];

- 2차원 정수배열은 각 행 마다 다른 열의 길이를 가지게 하는 것이 가능하다.

- array를 이용하여 1에서 100까지의 합 구하기

*   클래스

- 클래스는 객체를 만드는 틀.

- 많이 쓰는 String도 클래스.

String str = new String("Hello");

string : class / str : 인스턴스, 객체를 가리키는 변수 / "Hello" : string 객체

- new 라는 키워드는 객체를 메모리에 올려준다. 메모리에 올라간 객체를 인스턴스라고 한다.

- 가리키다 = 레퍼런스하다 = 참조하다

- string.(method이름)

- 객체의 속성 : field

- 리턴타입의 유무와 매개변수의 형식에 따른 method

- 클래스가 가진 메소드를 사용하기 위해서는 객체로 만들어야 사용할 수 있다.

* Car객체 생성하기

public class CarExam{

public static void main(String args[]){

Car c1 = new Car();

Car c2 = new Car();

}

}

new 연산자는 new연산자 뒤에 나오는 생성자를 이용하여 메모리에 객체를 만들라는 명령.

메모리에 만들어진 객체를 인스턴스(instance)라고도 한다.

이렇게 만들어진 객체를 참조하는 변수가 c1 , c2 이다.

위의 코드가 실행되면 Car라는 객체가 2개가 만들어지고 각각의 객체를 참조하는 c1과 c2변수가 선언된다.

*  while / do는 꼭 하고 지나가는 반복문 do while / for / for의 간단한 버전 for each / switch

* 자바의 변수 타입 : 기본형 타입, 참조형 타입

- 기본형 타입 // 논리형 : boolean, 문자형 : char, 정수형 : byte, short, int, long, 실수형 : float, double

- 참조형 타입 // 기본형 타입을 제외한 모든 타입, 배열도 참조형이고, 클래스도 모두 참조 타입

- 기본형 타입은 다른 메소드에 매개변수로 전달될때, 10이라는 이 그대로 전달됨.

- 하지만 참조형 타입은 다른 메소드에 매개변수로 전달될때, 변수의 주소가 전달됨.

* 자바 인스턴스 생성 방법

- new 연산자를 이용하지 않고 인스턴스를 만드는 경우

- new 연산자를 이용해서 인스턴스를 만드는 경우

String str1 = "hello";

String str2 = "hello";

일 때, str1 == str2이다. 같은 인스턴스를 참조하기 때문.

String str3 = new String("hello");

String str4 = new String("hello");

일 때, str3 != str4이다. new 연산자를 이용하여 인스턴스를 새롭게 만들었기 때문에 서로 다른 인스턴스를 참조하게 되는 것이므로.

- str3.equals(str4) : true    // 둘의 문자열이 같은지 비교하는 메소드

- str.length() // str의 길이를 말해주는 메소드(공백도 포함)

- str.substring(i) // str의 i번 index부터 출력해주는 메소드

- str.substring(i,j) // str의 i번 index부터 (j-1)번 index까지 출력. 길이는 j-i가 된다.