1. 정리 - Top – level package 명은 고정이 되어있는데, 주로 회사 도메인을 반대로 작성하게 된다. ( com.naver ) 2. 패키지 - 클래스를 만들 때, 패키지를 결정한 후에 클래스를 생성하게 된다. - 우리의 도메인 이름 : zerock.org - - - > org.zerock. . - Ex. org.zerock.myapp.domain 식으로 패키지 명을 작성하게 된다. - 패키지 명이 다르면 클래스의 이름이 같아도 충돌이 생기지는 않는디. 3. 패키지 – import 문 - 패키지 내에 같이 포함된 클래스간 클래스 이름으로 사용가능 - 패키지가 다른 클래스를 사용해야 하는 경우 : - 1 ) 패키지 명이 포함된 전체 ..
1. 인스턴스 멤버 선언 VS 정적 멤버 선언의 기준 - 객체마다 가지고 있어야 할 데이터면 인스턴스 필드, 공용적인 데이터는 정적필드로 선언한다. - 인스턴스 필드는 계산기의 색, 정적 필드는 계산기 속에 있는 파이의 값이 해당 된다. - 인스턴스 필드로 작업해야 할 메소드는 인스턴스 메소드, 인스턴스 필드로 작업하지 않는 메소드는 정적 메소드로 선언한다. - 인스턴스 메소드를 불러들여 사용할 때에는 인스턴스 메소드를 사용해야 한다. - 정적 메소드는 더하기나 빼기처럼 자기 스스로 기능이 실행되어야 하기에, 정적 메소드를 사용하는 경우는 적은 편이다. 2. 정적 초기화 블록 [ Static initializer ] - 클래스의 구성 멤버 : - 1) 필드 - 2) 생성자 : 인스턴스 필드의 초기값을 넣..
1. 생성자 - 생성자 오버로딩 : 매개변수의 타입, 개수, 순서가 다른 생성자를 여러 개 선언 - 오버로딩에서 순서를 파악할 때 변수의 이름으로 판단하는 것이 아니라, 타입으로 판단하는 것이다. - 다른 생성자 호출 [ this ( ) ] // Car2.java : 중복코드를 줄이기 위해서 다른 생성자를 호출한다. - Car2(String model){ -this() 문법을 통해, 다른 생성자를 호출하는 것도 가능하다!! this(model,null); // 생성자2 호출 // 모든 생성자를 생성자3 호출하는 것이 아니라 바로 밑의 생성자를 호출하는 것이 좋다. } // 생성자1 - 생성자2 호출 Car2(String model, String color){ this(model, color,0); } /..
1. 요약 - OOP(객체지향프로그래밍) : 부품 객체를 먼저 만들고, 이것들을 하나씩 조립해 완성된 프로그램을 만드는 기법이다. - 클래스는 붕어빵 틀이고, 객체는 붕어빵이다. - 객체 모델링 : 현실세계의 것(ex.사람)을 필드(속성 – 나이, 이름)과 메소드(동작/행위 – 웃다, 먹다)로 구성된 자바 객체로 바꾸는 것. - 객체의 상호작용 : 객체들은 메소드를 통해서 서로 간에 기능을 이용하고 데이터를 주고 받는다. 2. 객체 지향 프로그래밍 - 객체간 관계의 종류 : 1. 집합관계 2. 사용관계 3. 상속관계 - 1) 사용관계 : 객체가 다른 객체를 사용하는 관계 - 2) 집합관계 : 완성품과 부품의 관계 - 3) 상속관계 : 종류객체와 구체적인 사물 객체 관계 ( 부모객체[기계] – 자식객체[자..
1. 배열타입 (sample71부터) - 배열 타입 별 항목의 기본값은 다음과 같다. - 1) 기본타입(정수) : 0 - 2) 기본타입(실수) : 0.0 - 3) 기본타입(논리) : false - 4) 참조타입 : null - 배열의 길이(.length)는 읽기 전용이기에 배열 길이의 조절은 불가능하다. - 다차원 배열 : 2차원 배열 이상의 배열을 의미한다. - 1차원 배열 : 배열의 원소가 하나의 값 (스칼라) ex. Int [] arr1 = { 1,2,3 }; - 2차원 배열 : ex. Int [] [] arr2 = { { 1, 2 } , { 3, 4} }; 이 경우 원소의 크기는 2이다. - Ex. Int [ ] [ ] arr2 = { { 1, 2 } , { 3, 4 } , { 5, 6 } }; ..
1. 참조타입 - 종류 : 배열타입, 열거타입, 클래스. 인터페이스, 레코드 - 참조타입은 그릇 안에 진짜 값을 저장하는 것이 아니라 주소를 저장한다. - 이러한 주소를 레퍼런스라고 부른다. - 참조타입은 객체(object)를 찾아갈 수 있는 주소를 저장하게 된다. - 자바는 ‘OOP : Object–Oriented Programming’라고 불린다. - 이는 객체 지향 언어라고 불리기도 하는데, 이는 여러 부품을 만들고 조립하는 것이다. 이때 부품을 객체라고 생각하면 편하다. - 기본 타입변수는 실제 값을 변수 안에 저장하게 되지만, - 참조 타입변수는 주소를 통해 객체 참조를 하게 된다. - Ex : 기본타입 변수 - int = age; , double price = 100.5; - EX : 참조타입..
1. 조건문 ( switch 문 ) - 변수나 연산식의 값에 따라 실행문 선택할 때 사용 - Switch(변수) { } - 변수와 값이 같을 때 수행되는 실행문을 결정시킬 수 있다. 2. 반복문 ( for문 , while문 , do-while문 ) - 중괄호 { } 블록 내용을 반복적으로 실행할 때 사용한다. - 종류 : for 문, while 문, do – while문 - 1. For문 : 반복 횟수를 알고 있을 때 주로 사용한다. - For( 초기식; 조건식; 증감식 ) { 실행문 } - 초기식은 int number = 10;에서 초기값을 생성하는 것과 비슷하게 식을 정의하는 것이다. - 조건식은 if( )안에 있는 조건식과 비슷하게 참과 거짓을 판단하는 식이다. - 참일 경우 중괄호 블록 { } 안..
1. 단항 연산자란? - 피연산자가 1개인 연산자이다. - (1) 부호 연산자 : + , - [ 논리타입인 boolean과 char타입은 사용이 불가능하다. ] - * 부호연산자의 산출타입은 int이다. - (2) 증감 연산자 : ++ , -- [ 전위와 후위가 구분되게 된다. ] - * 연산식에서 사용될 때, 후위연산자는 연산이 모두 끝난 후에 1증감을 시킨다. - (3) 논리부정 연산자 : ! [ Boolean 타입에만 사용이 가능하다. ] - * !피연산자 식으로 사용이 되며, 피연산자가 true면 false로 false면 true로 바꾸게 해준다. 2. 이항 연산자란? - (1) 산술 연산자 : + , - , * , / , % - (2) 문자열 연산자 : + [ 연산자 중 1개의 연산자가 Stri..
1. 데이터의 타입 - 정수 : byte(1바이트), char(2바이트), short(2바이트), int(4바이트), long(8바이트) - 실수 : float(4바이트), double(8바이트) - 논리 : Boolean(8바이트) - Double은 float보다 정확성이 높다. - Char은 문자 1개를 보관하기 위한 타입이다. 단지 문자를 그대로 보관하는 것이 아니라 문자에 할당된 코드를 보관하게 된다. 2. 문자집합(Character Set) - ASCII = 영어권문자로 밖에 표현하지 못함 - UTF-8 = 다국어 문자표현 가능 - Keystroke(키를 누르는 행위) -> 정수값으로 변환(Keycode) - (1) Encoding : 문자 -> 키코드(정수)로 변환 - (2) Decoding ..
1. 콘솔 창에 "Hello, World" 나타나도록 하기 public class Sample2 { // JVM이 main 메소드를 "호출(invoke)"(실행)시킨다!! //main : 메소드(method) --> "실행진입점" (entry point) // main을 가지고 있는 class를 실행클래스라고 부른다. // main이 없는 class를 라이브러리 클래스 라고 부른다. public static void main(String[] args) { System.out.println("Hello, World2"); // 프린틀린으로 (콘솔에 적히는)로그를 남길 수 있다. 하지만 다소 구식이다. // 위의 문장은 실행문으로 실행문은 ;으로 구분한다. 모든 실행문은 ;로 마감한다. } //main : ..