본문 바로가기

자바의정석

Java 객체의 생성과 사용 1. 객체의 생성 클래스명 변수명; // 클래스의 객체를 참조하기 위한 참조변수 선언 변수명 = new 클래스명(); // 클래스의 객체 생성 후, 객체의 주소를 참조변수에 저장 Tv t; // Tv인스턴스를 참조하기 위한 참조변수 t선언(메모리에 참조변수 t를 위한 공간이 마련됨) t = new Tv(); // new 연산자로 Tv인스턴스 생성, 생성된 Tv인스턴스의 주소를 t에 저장 // 위 두문장을 한문장으로 표현 가능 Tv t = new Tv(); 2. 객체의 사용 t.channel = 7; // Tv인스턴스의 멤버변수 channel의 값에 7 저장 t.channelDown(); // Tv인스턴스의 메서드 channelDown()호출 더보기
Java 하나의 소스파일에 여러 클래스 작성 하나의 소스파일에 하나의 클래스만을 정의하는 것이 보통이지만, 하나의 소스파일에 둘 이상 클래스 정의 가능 1. 작성 방법 1) 소스파일의 이름은 public class의 이름과 일치해야 함 Hello.java public class Hello { } class Hello2 { } 2) 소스파일 내에 public class가 없다면 소스파일 내 어떤 클래스의 이름으로 해도 됨 Hello.java class Hello { } class Hello2 { } 2. 잘못된 작성 1) 대소문자 구분 필요 hello.java // public class의 이름은 Hello인데 소스파일 이름이 hello이므로 실행 에러 발생 public class Hello { } class Hello2 { } 2) public c.. 더보기
Java 클래스(Class), 객체(Object), 인스턴스(instance) 1. 클래스(class): 객체(object)를 정의해놓은 것 -> Tv 설계도 1) 용도: 객체(object)를 생성하는데 사용 2. 객체(Object): 실제로 존재하는 것, 사물 또는 개념 -> Tv 설계도로 만들어진 tv 1) 용도: 객체가 가지고있는 기능과 속성에 따라 다름 2) 사용: 객체가 가지고있는 속성과 기능을 사용하는 것 3) 구성요소 속성(property) = 멤버변수(variable) 크기, 길이, 높이, 색상, 전원 상태, 볼륨, 채널 기능(function) = 메서드(method) 켜기, 끄기, 볼륨 높이기, 볼륨 낮추기, 채널 변경하기 등 // Tv클래스: Tv설계도 class Tv { // 속성(=멤버변수) String color; boolean power; int chann.. 더보기
Java 객체지향 언어 1. 객체 지향 프로그래밍언어 OOP(Object-Oriented Programming): 프로그래밍 언어 + 객체지향 개념(규칙) 2. 특징 1) 코드의 재사용성이 높음: 새로운 코드를 작성할 때 기존의 코드를 이용해 쉽게 작성 가능 2) 코드 관리 용이: 코드간의 관계를 이용해서 적은 노력으로 쉽게 코드 변경 3) 신뢰성 높은 프로그래밍: 제어자와 메서드를 이용해 데이터 보호하고 올바른 값 유지, 코드 중복 제거로 코드 불일치로 인한 오동작 방지 3. 핵심 개념 1) 캡슐화 2) 상속 3) 추상화 4) 다형성 더보기
Java String배열 1. String 배열의 선언과 생성 // 3개의 문자열을 담을 수 있는 배열 생성 // 참조형 변수의 기본값은 null로 초기화 됨 String[] name = new String[3]; 2. String 배열의 초기화 // 1. 배열의 각 요소에 문자열을 지정 String[] name = new String[3]; name[0] = "Kim"; name[1] = "Park"; name[2] = "Yi"; // 2. 배열의 생성과 초기화를 동시에 하는 방법 String[] name = new String[] {"Kim", "Park", "Yi"}; // 3. 2번 초기화를 더 간략하게 쓰는 방법 String[] name = {"Kim", "Park", "Yi"}; 3. String 클래스 1) char.. 더보기
Java 배열(Array)의 출력 1. 배열의 출력 int[] iArr = {50, 60, 70, 80, 90}; System.out.println(iArr); // [I@14318bb 형식의 문자열이 출력됨, '[': 배열, 'I': Integer타입, '@14318bb': 위치(주소) char[] chArr = {'a', 'b', 'c', 'd'}; System.out.println(chArr); // abcd가 출력됨 // 배열의 요소 순서대로 하나씩 출력 for(int i = 0; i< iArr.length; i++); { System.out.println(iArr[i]); } // Arrays 이용하여 배열의 요소 순서대로 하나씩 출력 // Arrays는 배열에 관련된 메소드를 제공함(import java.util,Arrays;.. 더보기
Java 변수(Variable) - 변수의 데이터 타입(Data type) 1. 변수의 타입1) 기본형(Primitive type):8개(boolean, char, byte, short, int, long, float, double) , 실제 값 저장2) 참조형(Reference type): 기본형을 제외한 나머지(ex. String, System 등), 객체의 주소 저장 2.  기본형(Primitive type)구분종류크기(byte)표현범위설명논리형boolean1true or flase조건식과 논리적 계산에 사용정수형byte1부호(S) 1bit + 7bit-2⁷ ~ 2⁷-1(-128 ~ 127) 이진 데이터를 다루는데 사용short2부호(S) 1bit + 15bit-2¹⁵ ~ 2¹⁵-1(-32768 ~ 32727) c언어 호환을 위해 추가된 정수형int4부호(S) 1bit +.. 더보기
Java 변수, 상수, 리터럴 1. 변수(variable)- 하나의 값을 저장하기 위한 공간- 변수 선언변수타입 변수명;  2. 상수(constant)- 값을 한번만 저장할 수 있는 공간(상수의 값은 변경 불가)- 상수의 선언final 변수타입 변수명;변수명 = 값;// 예시final int MAX_VALUE;MAX_VALUE = 100;  3. 리터럴(literal)- 그 자체로 값을 의미- 실제로 우리가 생각하는 상수, 프로그래밍에서 상수를 값을 한 번만 저장할 수 있는 공간으로 정의하였기 때문에 '리터럴'이라는 용어로 부름// 변수타입 변수명 = 리터럴;int year = 2022; - 리터럴 타입종류리터럴 예시설명논리형booleanfalse, true-정수형int123(10진수), 0b0202, 077(8진수), 0xFF(16.. 더보기