본문 바로가기
  • 🕊️ A Piece of Peace

🖥️ PC/JAVA11

11. 패키지 패키지란?패키지는 클래스를 체계적으로 관리하기 위한 도구로, 클래스들을 구분 짓는 폴더와 같은 역할을 합니다. 패키지의 물리적인 형태는 파일 시스템의 폴더이며, 단순히 파일 시스템의 폴더 기능만 하는 것이 아니라 클래스의 일부분입니다. 패키지는 클래스를 유일하게 만들어주는 식별자 역할을 하며, 클래스 이름이 동일해도 패키지가 다르면 다른 클래스로 인식됩니다. 또한, 패키지 내부에 다른 패키지를 포함할 수도 있습니다.패키지와 클래스는 도트(.)를 사용해서 표시합니다.package 상위패키지.하위패키지.클래스; 예제 코드package day10.pack1;public class ClassName { // 클래스 내용} 이는 파일 시스템에서 다음과 같이 보여집니다. 같은 패키지에 속하는 클래스들은 아무런.. 2024. 6. 26.
10. 메소드 오버로딩 메소드 오버로딩은 같은 이름의 메소드를 여러 개 정의하되, 각 메소드가 서로 다른 파라미터 목록을 가지도록 하는 기법입니다. 이는 다형성의 한 형태로, 다양한 입력에 대해 동일한 작업을 수행하기 위해 사용됩니다.정의같은 이름의 메소드여도, 파라미터 개수나 타입에 따라 다른 메소드가 실행됩니다. 이를 메소드 오버로딩이라고 합니다. 예를 들어, 다음과 같이 두 개의 add 메소드를 정의할 수 있습니다.예제 코드public class MethodOverloading { static int add(int i, int j) { return i + j; } static int add(int i, int j, int k) { return i + j + k; } pu.. 2024. 6. 26.
9. 파라미터 파라미터 선언과 호출Java에서 메소드를 호출할 때, 파라미터를 전달하여 메소드를 실행할 수 있습니다. 파라미터는 메소드의 입력값을 의미하며, 이를 통해 메소드는 다양한 입력에 대해 동작할 수 있습니다.재귀 호출 예제재귀 호출은 메소드가 자기 자신을 호출하는 방식입니다. 예를 들어, max(max(i, j), k)와 같은 방식으로 최대값을 찾는 재귀 호출을 사용할 수 있습니다.파라미터의 종류Formal Parameter(형식 파라미터): 메소드 선언 시 정의된 파라미터입니다.int add(int i) { ... } Actual Parameter(실제 파라미터): 메소드 호출 시 전달되는 값입니다.add(1 + 2); 파라미터 전달 매커니즘Pass by ValueJava는 기본적으로 모든 파라미터를 값으로.. 2024. 6. 26.
8. 메소드 응용 프로그램을 설계할 때, 코드를 기능 단위로 나누는 것은 매우 중요합니다. 이렇게 하면 설계가 용이하고, 코드를 이해하기 쉬우며, 단위로 디버깅할 수 있기 때문입니다. 특히 Java에서는 클래스 내에서 명명된 코드 블록을 단위로 응용 프로그램을 구성하는데, 이를 메소드라고 합니다. 메소드는 작업을 수행하거나 값을 계산하는 클래스의 구성원입니다. 이번 글에서는 Java 메소드의 선언, 생성, 호출, 반환, 그리고 관련 개념들에 대해 알아보겠습니다.메소드 선언메소드란?객체는 상태와 행위(동작)로 구분됩니다. 객체가 동작하기 위해 선언된 것이 메소드입니다. 메소드는 특정 작업을 수행하는 일련의 문장들을 하나로 묶은 것으로, 함수, 서브루틴, 프로시저, 서브 프로그램과 비슷한 개념입니다.메소드와 유사한 개념.. 2024. 6. 26.
7. 예외처리 Exception 예외처리 (Exception)예외를 왜 사용해야 하는가?파일을 오픈해 작성하거나 수정할 시 파일이 없거나, 파일 접근 권한이 없거나, 파일이 깨져 있을 수 있기 때문에 예외 처리를 사용해야 합니다.예외 객체Checked 예외 (Checked Exception)체크 예외가 발생할 수 있는 메소드를 사용할 경우 복구가 가능한 예외로, 반드시 예외 처리를 해야 합니다.Unchecked 예외 (Unchecked Exception)명시적으로 예외 처리를 강제하지 않습니다.Error메모리 부족 등 시스템에 심각한 상황이 발생했을 경우 예외를 발생시킵니다. Checked 예외는 RuntimeException의 하위 클래스가 아닌 Exception 클래스의 하위 클래스로 구분할 수 있습니다. Checked 예외는 반드.. 2024. 6. 26.
6. 자바의 기본 데이터 타입 (Primitive Data Types) 값 타입과 참조 타입값 타입 (Value Type)값 타입은 스택 영역에 데이터가 저장됩니다. 예를 들어, 아래 코드를 보겠습니다.public class Swap { public static void main(String[] args) { int i = 5; int j = 10; swap(i, j); System.out.printf("MAIN i: %d, j: %d", i, j); } public static void swap(int i, int j) { int tmp = i; i = j; j = tmp; System.out.printf("SWAP i: %d, j: %d", i, j); .. 2024. 6. 26.