study/JAVA 🦊 10

JAVA - 10

✅ 공부를 할 때 코드를 전부 외우려고 하지 말고, 예제에서 적힌 주석, 클래스 선언 라인, 파라미터 등을 외워라 컬렉션 프레임 워크 컬렉션이란? 다수의 데이터를 쉽게 처리할 수 있는 표준화된 방법을 제공하는 클래스 List와 Map은 인터페이스로 추상메서드이다 List → ArrayList 상속 (인덱스 값, 순서 O, 중복 O) Map → HashMap 상속 (키 값, 순서 X, 중복 X) 두 클래스가 컬렉션에서 가장 대표적인 클래스이다 HashMap 클래스 HashMap은 Map의 인터페이스를 상속받는 클래스 Map data = new HashMap(); 선언과 할당 시에 데이터형(String)과 저장할 데이터형을 클래스의 이름으로 명시하는 것을 제너릭스 라고 한다. 기본 자료형을 보관할 경우 Wr..

study/JAVA 🦊 2021.01.07

JAVA - 9

예외처리(Exception) 예외처리란? 없는 게 좋은데 충분히 일어날 수 있는 것 → 에러난 라인 앞뒤로 확인 프로그램이 실행되는 과정에서 다양한 경우의 수에 대응하지 못 하여 발생하는 상황 에러의 종류 시점에 따른 분류 ✔️ 컴파일 에러 : 소스 구문 오류로 인한 컴파일이 불가능한 상태(시작도 하기 전에 에러) ✔️ 런타임 에러 : 구문상의 에러는 없지만 실행되는 과정에서 발생하는 예외사항 → 프로그램 강제 종료 런타임 에러 종류 논리 오류 → 개발자가 똑똑해져야한다 자바 가상머신 오류 → 시스템 자체 오류 예외 → 예외 클래스로부터 예외 객체를 생성하며 프로그램에서 지정된 예외 처리 구문으로 넘긴다 (콜백) ✅ 예외 구문 : try ~ catch(예외 구문) ~ finally(무조건 실행) 예외 처..

study/JAVA 🦊 2021.01.07

JAVA - 8

String 클래스 String 객체의 생성 방법 String str1 = "자바 Programing"; String str2 = new String("Java"); String 클래스로 할 수 있는 기본 기능 문자열의 길이 조회 → str.length() 특정 문자열이 처음 나타내는 위치 조회 → str.indexOf() 특정 문자열이 나타내는 마지막 위치 조회 → str.lastIndexOf() A를 B로 변경하기 →str.replace() 대소문자 변경 → str.toUpperCase(), str.toLowerCase() 문자열의 앞뒤 공백 제거 → trim() 문자열 비교 → str.equals() 문자열 자르기 → str.substring() 형식에 따른 문자열 출력을 위한 static 메서드 ..

study/JAVA 🦊 2021.01.07

JAVA - 7

싱글톤 싱글톤이란? 프로그램 내에 여러 곳에서 반복적으로 사용되어야 하는 객체에 대해 전역 범위를 갖도록 객체 생성 여러 곳에서 공유하기 위한 작성 패턴 싱글톤의 장점 공유 기능을 하나만 생성하여 여러 곳에서 재사용함으로써 메모리를 효율적으로 사용 객체를 일일히 생성해야 하는 번거로움을 피할 수 있다 싱글톤의 특징 static을 선언되어 고정영역에 생성되기 때문에 필요할 때마다 메모리에 할당 객체가 할당되지 않은 경우에만 할당하도록 하여 중복 할당 방지 메모리에서 삭제하는 기능이 있다 생성자를 private 형태로 정의하여 외부에서 접근 금지 하나의 객체만 참조하기 때문에 메모리 사용 절약 가능 싱글톤 객체 사용하기 getInstance() 메서드를 사용하여 리턴 받는 형식으로 사용 싱글톤 형태 //싱글..

study/JAVA 🦊 2021.01.07

JAVA - 6

추상화(abstract) 추상화란? 프로그램 코딩의 틀을 강제하는 것 추상화가 되어있는 클래스는 객체를 못 만든다 → 비어있기 때문에 상속 과정에 있어서 메서드를 자기가 정의하는 것이 아니라, 자식들이 정의하라고 가이드라인을 제공하는 것 ✅ Java 클래스를 작성하기 위한 설계도를 소스코드 형태로 제시 자바빈즈가 갖는 특성은 다 갖는다 ✅ 추상화는 메서드와 클래스에만 사용할 수 있다. //선언만 가능하고, 구현부를 위한 블록 존재 X public abstract void sayHello(); //------추상메서드--------- public abstract class Hello { private String msg; public Hello(String msg) { this.msg=msg; } publ..

study/JAVA 🦊 2020.12.28

JAVA - 5

은닉성 은닉성이란? 멤버변수나 메서드가 객체에 노출이 되지 않도록 설정 → private 멤버변수가 은닉된 형태(private)로 선언된 경우, 메서드를 통해 간접적으로 접근하는 방법이 마련되어야 한다. 이때 사용하는 메서드가 Getter, Setter 이다. → Getter : 은닉된 멤버변수값을 리턴하기 위한 메서드 (리턴 O) → Setter : 파라미터로 전달된 값을 멤버변수에 복사하기 위한 메서드 (리턴 X) 클래스 분리 하나의 클래스에서 모든 기능을 구현하게 되면 유지보수 비효율적 → 기능단위로 분리 → public으로 정의 Java Beans 자바 언어에서 사용하는 복합적 데이터 표현의 최소 단위 자바로 작성된 컴포넌트(=구성요소)들을 일컫는다 재사용 가능한 구성요소를 생성 자바빈즈 클래스를..

study/JAVA 🦊 2020.12.28

JAVA - 4

객체 객체란? 존재하는 것에 이름을 붙여놓고 특성을 부여한 것 프로그래밍에서 객체란? 프로그램에서 표현하고자 하는 기능을 묶기 위한 단위 ✅ 객체 = 기능(함수, 메서드) + 데이터(멤버변수, 프로퍼티) 프로토타입이란? 상품화에 앞서서 핵심 기능만 넣은 기본 모델, 기초 버전, 변화에 대응 쉬움 클래스 클래스란? 객체의 설계도 역할을 하는 프로그램 소스 → 같은 속성, 다른 객체 → 클래스 안에 포함된 멤버변수와 메서드를 그룹화하기 위해 작성한 것 ✅ 멤버변수 : 변수, 전역변수 ex> int age; 같은 것 ✅ 메서드 : 함수 ex> void print(), int plus() 등 기능으로 묶인 것 멤버변수와 메서드는 여러 개 존재할 수 있다 객체의 할당 클래스이름 객체이름 = new 클래스이름();..

study/JAVA 🦊 2020.12.27

JAVA - 3

조건문 무조건 실행되는 것이 아니라, 특정 조건을 충족할 경우에만 실행되는 구문 ✅ 조건 —> 연산을 하는 것 (ex 사칙, 비교, 논리 등) 프로세스 : 운영체제가 실행하라고 만든 일꾼 = 실행중인 프로그램 if(조건식){ 조건이 맞을시 실행할 명령문; } // 조건이 맞을시에 if문만 실행 if(조건문){ 조건이 맞을시 실행할 명령문; }else{ 조건이 맞지 않을시 실행할 명령문; } //조건이 맞으면 if, 맞지 않으면 else 실행 if(조건문1){ 1의 조건이 맞을시 실행할 명령문; }else if(조건문2){ 2의 조건이 맞을시 실행할 명령문; }else { 1,2 둘다 맞지 않을시 실행할 명령문; } // 조건에 따라 실행할 명령문이 나뉜다 // else if의 갯수는 한정되지 않는다 if..

study/JAVA 🦊 2020.12.27

JAVA - 2

소스코드 분석 소스는 블록 { ... } 간의 중첩으로 이루어진다. 블록 안에 명시되는 명령어는 세미콜론 ( ; )으로 문장의 끝을 표현한다. 주석문이란? 프로그램 소스코드 안에 개발자의 필요에 따라 명시하는 설명문 // 한줄 주석문 이 라인만 주석으로 처리한다 /* * 이 블록 안에서는 여러 라인을 주석으로 처리할 수 있다 */ ✅ class는 프로그램 소스의 최소 단위이다 main은 프로그램의 시작점을 의미한다 변수 다양한 자료를 표현할 수 있는 값을 변수라고 한다. 일반적으로 웹 페이지에서 처리하고자 하는 데이터에 해당한다. ↔ 상수 : 변하지 않는 값 (final) 로 선언 변수의 자료형 자료형 데이터 메모리크기 boolean 참/거짓 1byte char 문자 2byte byte 정수 1byte ..

study/JAVA 🦊 2020.12.26

JAVA - 1

프로그래밍 기초 프로그래밍 언어란? 인간과 컴퓨터 사이에서 의사소통을 가능케 하는 인공적인 언어이다. 프로그래밍 언어의 종류 기계어 → 어셈블리어 → 고급언어 (Low레벨) 인코딩이란? 문자나 기호들을 컴퓨터에 저장하는 것. 한글과 영어등을 볼 수 있게 컴퓨터가 처리하는 과정. JAVA 썬 마이크로시스템즈에서 개발한 객체지향 프로그래밍 언어 → 현재 썬 마이크로시스템즈는 오라클에 인수가 되었다. 자바의 특징 ✅운영체재 독립적 : JVM이 설치된 환경이면 어디서든지 실행 가능 ✅객체지향 언어 : 상속, 캡슐화, 다형성 / 코드의 재사용 및 유지보수에 용이 ✅자동 메모리 관리 : Garbage Collector가 자동으로 메모리 관리 ✅네트워크, 분산처리, 멀티스레드 : 시스템과 관계 없이 손쉬운 API 제..

study/JAVA 🦊 2020.12.26