Programming/Java
-
[Java 자바] 6. 클래스 ⑤ 패키지Programming/Java 2022. 7. 31. 15:38
6-12. 패키지 폴더를 만들어 파일을 저장 관리하듯, 패키지를 만들어 클래스를 저장 관리 - 패키지는 클래스를 유일하게 만들어주는 식별자 역할을 함 (클래스명이 같더라도 패키지가 다르면 다른 클래스로 인식) - 클래스 이동시에는 패키지도 함께 이동해야 정상적으로 사용 가능 6-12-1. 패키지 선언 패키지는 클래스 컴파일 과정에서 자동적으로 생성되는 폴더 package 상위패키지.하위패키지; public class ClassName {...} [ 패키지 Naming 규칙 ] 숫자로 시작해서는 안 되고, _, $ 를 제외한 특수문자는 사용 불가 java로 시작하는 패키지는 자바 표준 API에서만 사용하므로 사용 불가 (java.util) 모두 소문자로 작성하는 것이 관례 - 패키지간 중복 방지를 위해 회..
-
[Java 자바] 6. 클래스 ④ this, static, final, static finalProgramming/Java 2022. 7. 31. 15:00
6-9. 인스턴스 멤버와 this - 인스턴스 멤버: 객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드 - 객체 내부에서 인스턴스 멤버에 접근하기 위해 this 사용 public class Car { String model; int speed; Car(String model) { this.model = model; } void setSpeed(int speed) { this.speed = speed; } void run() { for(int i = 0; i
-
[Java 자바] 6. 클래스 ③ 필드, 생성자, 메소드Programming/Java 2022. 7. 31. 13:51
6-6. 필드 필드는 객체의 고유 데이터, 객체가 가져야 할 부품, 객체의 현재 상태 데이터를 저장하는 곳 6-6-1. 필드 선언 - 클래스 중괄호 블록 내에서 변수처럼 선언 (단, 생성자와 메소드 중괄호 블록 내부에는 선언 불가) 데이터타입 필드명;// 선언하지 않을 경우 타입별 초기값으로 저장됨 데이터타입 필드명 = 초기값; 6-6-2. 필드 사용 - 필드를 사용한다 == 필드값을 읽고, 변경하는 작업을 한다 - 클래스 내부에서는 필드의 사용이 가능하지만, 외부에서 사용할 경우 클래스로부터 객체를 생성 후 사용해야 함 - 객체를 생성한 후, 인스턴스명.필드명을 통해 클래스의 필드에 접근이 가능 // Person.java public class Person { String name = "Erin"; i..
-
[Java 자바] 6. 클래스 ② 클래스 선언, 객체 생성Programming/Java 2022. 7. 31. 11:32
6-3. 클래스 선언 [ 클래스 이름 작성 규칙 ] 번호 작성규칙 예 1 하나 이상의 문자로 이루어짐 Car, SportsCar 2 첫 글자는 대문자나 '$', '_'만 사용 가능 (소문자 가능하나 관례상 첫글자는 대문자) Car, 3Car(x) 3 '$', '_' 외의 특수문자 사용 불가능 $Car, _Car, @Car(x) 4 자바 예약어 사용불가능 int(x), for(x) ✨ 네이밍 표기법 종류 1. camelCase: 변수명, 함수명 작성시 사용 2. PascalCase: 클래스 이름 작성시 사용 3. snake_case: 주로 파이썬에서 사용, 자바에서는 상수 지정시 대문자로 SNAKE_CASE처럼 사용 4. kebab-case: HTML, CSS에서 속성명, 아이디명, 클래스명 작성시 주로 ..
-
[Java 자바] 6. 클래스 ① 객체지향 프로그래밍, 객체와 클래스Programming/Java 2022. 7. 30. 23:49
6-1. 객체 지향 프로그래밍 6-1-1. 객체란? - 객체는 속성과 동작으로 구성, 자바에서는 이를 필드(Field)와 메소드(Method)라고 부름 - 객체 모델링(Object Modeling): 현실 세계의 객체를 소프트웨어 객체로 설계하는 것 6-1-2. 객체의 상호작용 - 소프트웨어는 다른 객체와 서로 상호작용하면서 동작 - 객체들 사이의 상호작용 수단 : 메소드 - 객체가 다른 객체의 기능을 이요하는 것: 메소드 호출 // Calculator라는 객체에 변수 2개를 더하는 메소드가 있을 경우, // result에 아래와 같은 방법으로 객체의 메소드에 접근해 값을 저장할 수 있음. int result = Calculator.add(10,20); 6-1-3. 객체 간의 관계 - 객체 지향 프로그래..
-
[Java 자바] 5. 참조 타입 ② 배열, 배열 생성, 배열 길이, 다차원 배열, 향상된 for문Programming/Java 2022. 7. 30. 22:48
5-6. 배열 타입 5-6-1. 배열이란? - 같은 타입의 데이터를 연속된 공간에 나열하고, 각 데이터에 인덱스(index)를 부여해 놓은 자료구조 - 변수 선언시 힙 영역에 아래와 같은 배열이 생성되며, 스택영역은 힙영역의 참조값을 저장 - 인덱스는 0부터 시작하므로 주의 - 배열은 한 번 크기가 정해지면 그 크기를 바꿀 수 없으므로 사용에 주의 int[] score = {90, 85, 60, 100, 95}; 5-6-2. 배열 선언 데이터타입[] 변수; int[] intArray; String[] strArray; // 이 때 값을 초기화하지 않으면 스택 영역에 참조값이 null인 상태로 저장됨 // null 상태로는 배열을 사용할 수 없기 때문에, 오류가 발생할 수 있음 5-6-3. 값 목록으로 배..
-
[Java 자바] 5. 참조 타입 ① 데이터 타입 분류, 메모리 사용 영역, StringProgramming/Java 2022. 7. 30. 15:11
5-1. 데이터 타입 분류 - 기본 타입(Primitive type): 정수, 실수, 논리 데이터 타입 (byte, char, short, int, long, float, double, boolean) - 참조 타입(Reference type): 이외의 모든 데이터 타입(String, 배열, 열거, 클래스, 인터페이스 등) => 둘은 메모리에 저장되는 방식이 다르다! // [기본 타입 변수] int age = 25; double price = 100.5; // [참조 타입 변수] String name = "에린"; String hobby = "코딩"; - 기본 타입 변수들은 변수와 값이 스택 영역에 직접 저장 - 참조 타입 변수들은 변수와 힙 영역에 저장되어 있는 객체의 주소값이 스택 영역에 저장 => ..
-
[Java 자바] 4. 조건문과 반복문 ② 반복문, for문, while문, do-while문Programming/Java 2022. 7. 30. 14:16
조건문과 반복문 이전글: https://erinh.tistory.com/entry/Java-자바-4-조건문과-반복문-조건문-if-if-else-else-if-switch 4-3. 반복문 (for 문, while 문, do-while 문) 4-3-1. for 문 for(초기화식; 조건식; 증감식) { 반복 수행할 문장 } - 초기화식: 반복문이 실행될 때 딱 한 번 실행되는 코드 - 조건식: 조건식이 false이면 반복문 종료 - 증감식: 반복문이 한 번 끝날 때마다 한 번씩 실행되는 코드 - 초기화식, 증감식은 ( , ) 를 이용하여 둘 이상 작성 가능 - 필요하지 않은 부분은 생략 가능 - 반복 횟수를 알고 있을 때 유용하게 사용 int sum = 0; for (int i = 1; i