목록Java (117)
hyeonga_code
2024.03.27 - 예외처리_Exception - try-catch try { // 예외가 발생할 수 있는 문장 // 예외가 발생한 위치 이후의 문장은 실행되지 않는다 } catch (Exception e) { // 예외가 발생하는 경우 실행 } finally { // 무조건 실행( 생략가능 ) } ---- try 블록 내에 선언한 변수는 catch 블록에서 사용할 수 없다. ---- finally 블록은 코트의 중복을 피하기 위해 반드시 필요하다. ---- catch()문의 다중 예외처리가 가능하다. ---- 예외 처리의 순서도 중요하다. ------ 모든 예외의 최상위 클래스는 Exception ------ 먼저 선언된 catch 블록의 예외 클래스가 이후 선언한 catch 블록의 부모 클래스에 ..
2024.03.27 -- SI_System Integration ---- 일정 기간 동안 시스템을 만들어주는 것 -- SM_System Maitenance ---- 시스템을 운영하고 유지 보수하는 것 ---- 계속 보완하고 발전시킴 - 인터페이스_Interface -- 사용자의 입장에서 내부 구현은 중요하지 않다. -- DAO_Data Access Object 패턴 ---- 데이터를 저장하는 저장소에서 원하는 값을 요청하고 응답을 받는다 -- 인터페이스와 abstract를 사용하는 이유 ---- 설계 시 선언해 두면 개발 시 기능을 구현하는 데에만 집중할 수 있다. ---- 개발자의 역량에 따른 메소드의 이름과 매개 변수 선언의 격차를 줄일 수 있다. ---- 공통적인 인터페이스와 abstract 클래스..
2024.03.27 - Object 클래스 -- Java의 모든 클래스의 부모 클래스 -- 어떠한 클래스도 상속받지 않는 경우 Object 클래스를 자동으로 상속받는다. -- 다중 상속은 불가능하지만 단계적인 상속은 가능하다. -- 클래스의 기본적인 행동을 정의할 수 있는 클래스 Object 클래스의 메소드 ㄴ[ 객체를 처리하기 위한 메소드 ] ㄴ[ 스레드를 위한 메소드 ] -- 객체를 처리하기 위한 메소드 더보기 protected Object clone() // 객체의 복사본을 만들어 리턴 public boolean equals(Object obj) // 현재 객체와 매개 변수로 넘겨 받은 객체가 같은지 확인 protected void finalize() // 현재 객체가 쓸모 없어진 경우 가비지 컬렉..
2024.03.27 - API_Application Programming Interface -- 애플리케이션에 선언되어 있는 클래스와 메소드에 대한 상세한 설명이 포함된 문서 -- Java의 API는 HTML 문서로 구성 -- 따로 작성하지 않고 메소드, 클래스 선언 전/후에 주석을 상세하게 작성한 후, jdk/bin 폴더의 javadoc 명령어를 실행하면 자동으로 HTML 확장자의 API 문서가 생성된다. -- OpenJDK [ https://devdocs.io/openjdk~21 ] DevDocs — OpenJDK 21 documentation devdocs.io -- OracleJDK [ https://docs.oracle.com/en/java/javase/19/docs/api/index.html ..
2024.03.27 - 상속_Inheritance -- 자식 -> 부모 -- 부모 클래스는 기본 생성자만 있어도 된다. -- 자식 클래스의 생성자가 호출되면, 자동으로 부모 클래스의 매개 변수가 없는 생성자가 실행된다. -- 자식 클래스에서는 부모 클래스에 있는 public, protected 로 선언된 모든 인스턴스 변수와 클래스 변수, 메소드를 사용할 수 있다. -- 하나의 부모 클래스만 가질 수 있다. -- 실행한 후 부모 클래스를 수정한 경우, 부모 클래스를 재 컴파일 해야 이전에 컴파일 한 파일이 아닌 수정된 파일을 상속받아 사용한다. 더보기 public class Parent{ public Parent(){} } public class Child extends Parent{ public Chi..
2024.03.27 - 패키지_Package -- 트리 형태 -- 이름이 중복되거나 역할에 혼동을 줄이기 위함 package 패키지 폴더 구조; ---- 코드의 첫 줄에 작성 ------ 공백/주석은 가능 ---- 코드 하나에 한 번만 선언 ---- 패키지 이름과 파일이 위치한 폴더의 이름이 동일해야 한다. ---- 패키지 이름이 java로 시작할 수 없다. ---- 패키지의 이름은 모두 소문자로 작성 ---- 예약어를 사용할 수 없다. 더보기 java -- 자바 기본 패키지 -- Java 벤더에서 개발 javax -- 자바 확장 패키지 -- Java 벤더에서 개발 org -- 비영리단체 패키지 -- 오픈소스 com -- 영리단체 패키지 -- 회사 - Import -- 다른 패키지에 접근하기 import..
2024.03.27 - 참조 자료형_Reference Type -- 기본 자료형을 제외한 모든 자료형 -- new 를 사용해 객체를 생성하여 사용 ( String 제외 ) -- 등호 외의 연산자를 사용할 수 없음 ( String 제외 ) -- 기본 생성자 ---- 다른 생성자를 작성하지 않은 경우 컴파일 시 자동으로 생성된다. ---- 매개변수를 가지는 생성자를 작성하는 경우 기본 생성자도 함께 작성해야 한다. 더보기 public Reference(){} -- 생성자가 필요한 이유 ---- 자바 클래스의 객체(인스턴스)를 생성하기 위해 존재 ---- 생성자의 리턴 타입은 클래스의 객체이므로 리턴타입을 작성하지 않음 ---- 클래스와 이름이 동일해야 컴파일러가 생성자임을 인식할 수 있음 ---- 클래스의 ..
2024.03.26 - Array -- 같은 자료형 여러개를 하나의 변수에 저장 더보기 int[] arr1 = new int[2]; // int형 값을 2개를 저장할 수 있는 배열 int arr2[] = new int[3]; // int 형 값을 3개를 저장할 수 있는 배열 int[] arr3 = { 1, 2, 3, 4 }; // int 형 배열에 값이 4개인 배열 arr1[0] = 15; // 배열 arr1 의 0번째에 15를 저장 ---- 배열은 반드시 초기화해야 사용할 수 있다.(참조형) ---- 배열의 인덱스는 0부터 시작하므로 배열크기-1이 최대값이다. ---- 참조 자료형을 가지는 배열은 초기화하지 않는 경우 null을 가진다. ---- 배열은 참조 자료형이므로 출력시 @ 값으로 출력된다. -..
2024.03.26 -- IF ---- 한 문장인 경우 {} 를 작성하지 않아도 된다. 더보기 if ( 조건 ) { // 조건이 참인 경우 실행 } else { // 조건이 거짓인 경우 실행 } if ( 조건1 ) { // 조건1이 참인 경우 실행 } else if ( 조건2 ) { // 조건1이 거짓이고 조건2가 참인 경우 실행 } else { // 조건1이 거짓이고 조건2가 거짓인 경우 실행 } // ------------------------ if(true); //실행 if(true) System.out.println("true"); //실행 if(true) System.out.println("true"); //실행 if(false) System.out.println("false"); //실행되지 ..
2024.03.26 - 연산자_Operator -- 연산을 하기 위한 기호 -- 대입 연산자_Assignment Operator = -- 산술 연산자_Arithmetic Operator ---- 더하기_Additive Operator + ---- 빼기_Subtraction Operator - ---- 곱하기_Multiplication Operator * ---- 나누기_Division Operator / ---- 나머지_Remainder Operatror % -- 복합 대입 연산자_Compound Assignment Operator += -= *= /= %= -- 단항 연산자 ---- 단항 플러스 연산자_Unary Plus Operator + ---- 단항 마이너스 연산자_Unary Minus Opera..