목록JAVA/JAVA_개념 (12)
JAVA를 잡아라!...
Test.java 파일 1개에서 코드를 관리하면 1) 다른 사람이 코드 작성중일 때 실행불가능 2) 다른 사람과의 동시간 형성(버전)관리가 불편함 ==> 기능별로 나눠서 작업하면 어떨까? 프로그램 코딩을 M V C 파트로 분할하자! Model - 데이터와 관련된 작업을 처리하는 부분 - "나는 항상 정확한 값을 받았다." 를 전제 - ex) 코더가 아래 생각을 갖고 코딩 - 회원 가입 할 때 생년월일에 -200000년도를 입력하는일은 없을거야~ - 정확한 입력을 받았을 때 내가 어떻게 처리할까? - 정확한 입력을 받았을 때 CRUD를 구현할거야~ Model_DTO = 클래스 객체 - 자료형이 없어서 개발자가 직접만든 클래스 ex) Student 자료형..., - 값을 들고다니는 자료형으로 value값을 ..

#1 개념 - 예외, 에러, 오류, 이슈, 문제, 컴플레인, ... - 프로그램을 비정상적으로 종료되게하는 문제들 - 비정상 종료란? : 사용자가 원할때 종료하는 것이 바람직함 - 예외는 발생되면 프로그램이 즉시 종료됨! - 예외(Exception)가 발생되면 캡쳐 >>> 원인파악 >>> 해결책 블로그 포스팅 ▶ 예외처리를 왜 해야하는가? 프로그램은 절대 비정상종료되면 안됨! 1) 예외가 발생되면 무시하고 다음 스텝으로 이동 2) 예외가 발생할 수 있으니까, 제대로 사용해~ 하고 안내 ★ ★ try-catch ★ : try {} 가 에러가 난다면 catch로 들어가고 에러가 안난다면 catch무시하고 다음 소스코드 실행! try{}문 : 예외가 발생할 것 같은 코드를 try{ }로..
#1 private_"캡슐화(정보은닉)" - JAVA의 모든 멤버변수는 private으로 보호해야함 - 외부에서의 직접 접근을 막아야함 - 접근제어자 private 키워드 작성 ▶ getter() & setter() - getter() : 감춰진 멤버변수의 값을 받아오는 메소드 - setter() : 감춰진 멤버변수에게 값을 부여하는 메소드 - getter, setter는 보통 생성자 다음에 생성
#0 프레임워크 - ex) 컬렉션, Spring, Mybatis, JPA, ... - 뼈대, 틀, 구조, ... - 개발자들에게 뼈대를 제공해주겠다! 라는 컨셉 - 개발 편의성을 제공 - 창의력 XX, 하라는대로 O, 쓰라는대로 O --> 개발자들 코드가 같다 1) 개발자들의 실력이 상향 평준화 2) 유지보수 용이 ★ ▶ 컬렉션 프레임워크 - 배열같은 자료형(자료구조)들을 제공하는 라이브러리 - JAVA에서 기본 제공해줌 - 배열리스트, 링크리스트, 집합, 맵, 트리, ... - 웹 개발에서 多 사용 : 배열리스트, 맵 #1 프레임워크_배열리스트 - 향상된 배열 - 서로 관련된 데이터들을 저장할 수 있는 자료형(자료구조) - 배열과 다르게 배열의 3요소 중 1요소만 만족..
#1 추상클래스 ▶ 추상클래스가 어떻게 등장했는가? : 기존에 이미 많은 자식클래스들이 있었는데, 이들의 부모 클래서가 없어서 부모 클래스를 정의하기 위해 탄생 : 더 상위가 없었다고 생각했는데... 나중에 상위를 정의! ▶ 객체를 정의하는데 관심이 없음 : 추상클래스는 객체 생성이 불가능, 실제하지 않는 것으로 객체 생성을 하지 않는 클래스에 붙임 ▶ 클래스를 정의하는데 관심이 있음 ▶ 추상클래스를 사용하는 이유 1. 객체화를 막기 위함 2. 추상메소드를 사용하기 위함 : 메소드 오버라이딩을 강제! ▶ 추상메소드 1. 얘 좀 오버라이딩 해줄래? 2. 오버라이딩을 "강제" 3. 호출될일이 없으므로 메소드바디{}가 없음! ▶ 추상클래스 선언 abstract class 클래스명 { abstract 리턴타입 ..
#1 개념 ▶ 상속(inheritance) 기존에 선언된 클래스의 필드를 새롭게 만들 클래스의 필드로 사용하고자 할 때 여러 클래스 선언 시 필드가 겹치는 경우, 부모 클래스를 먼저 선언하고 공통 필드를 묶어서 자식 클래스들에게 상속해준다. - 부모 클래스, 상위 클래스, 슈퍼 클래스, 기반 클래스 - 자식 클래스, 하위 클래스, 서브 클래스, 파생 클래스 #2 문법 ▶ 문법 class A { A 필드 } class B extends A { A, B 필드 } ▶ extends : 상속의 키워드로 부모의 인자를 상속받은 자식은 계속 확장 ▶ super() : 부모 생성자 : 자식 클래스 타입의 객체로 부모 필드에 접근할 수 있음 하지만 자식 생성자만 호출하기 때문에, 자식 필드만 메모리에 할당된다... 자..