JAVA/기초공부 20

[JAVA] 패키지

패키지란?: 자바언어에서 제공되는 여러 클래스 또는 인터페이스들의 특성을 고려하여 분류해 놓은 것   패키지 사용 시 장점클래스의 이름이나 메소드 이름이 같으면 충돌이 발생하는데 패키지 단위로 구분해놓으면 충돌을 방지할 수 있다.패키지 단위로 클래스, 메소드, 변수 등의 접근을 제한할 수 있다.동일한 특성과 성격을 기준으로 클래스들을 분류하면 클래스의 사용과 관리가 용이하다.    패키지 사용방법패키지 선언package OOP.com.info.dept;-> 클래스나 인터페이스의 첫 번째 줄에 package 키워드를 사용해 해당 파일이 어떤 패키지에 속하는지 선언한다. 패키지 임포트import java.util.ArrayList;import java.util.*; // 패키지 내의 모든 클래스 import..

JAVA/기초공부 2024.09.29

[JAVA] String 클래스

자바에서 String 클래스란?: 자바에서 문자열을 다루기 위해 제공되는 대표적인 클래스문자열은 char의 배열로 구성된 데이터 타입이며 자바에서는 String 클래스가 이러한 문자열을 처리하고 관리하는 역할을 한다.   String 클래스 주요 특징1. 불변성String 객체는 한 번 생성되면 그 값을 변경할 수 없다. 문자열을 수정하는 경우 새로운 String 객체가 생성되고 원래의 문자열은 변경되지 않는다. -> 멀티스레드 환경에서 안전하게 사용할 수 있다. (상태 변화가 없기 때문에 동기화 불필요, 공유 객체를 안전하게 재사용, 데이터 일관성 보장) 2. 리터럴로 선언 가능String str = "Hello"; 처럼 문자열 리터럴을 이용해 선언할 수 있다. 자바는 동일한 리터럴 값을 가진 문자열을..

JAVA/기초공부 2024.09.29

[JAVA] this와 this() 메소드

this의 사용클래스 내의 자신의 객체를 가리키는 것이 this 이다.주로 생성자에서 멤버변수와 생성자의 형식매개변수의 이름을 동일하게 정의한 경우 this. 으로 표현하여 멤버변수와 인수를 구분하는데 사용한다.필드와 매개변수 구분이나 현재 객체 반환에 유용하다.class Shape { int width; int height; String color; // 생성자 // this : 멤버변수와 생성자의 매개변수를 구분하기 위해 사용 Shape(int width, int height) { this.width = width; this.height = height; } // 메소드 void setColor(String color) { ..

JAVA/기초공부 2024.09.28

[JAVA] 생성자와 생성자 중복

생성자란?: 객체가 생성될 때 호출되는 특별한 메서드    자바에서 생성자를 사용하는 이유?객체가 생성될 때 필요한 초기화 작업을 수행하고 특정 상태로 객체를 설정하기 위해서예 ) 멤버변수로 이름, 학번, 학과를 가진 객체를 만든다고 했을 때- 생성자 없이 만들경우class MyInfo_01 { public String name; public int number; public String dept;}public class ConstructorTest_01 { public static void main(String[] args) { // MyInfo_01 클래스 형인 객체 my 생성 MyInfo_01 my = new MyInfo_01(); // ..

JAVA/기초공부 2024.09.28

[JAVA 기초] 클래스 정의 및 객체 생성

클래스(Class)의 정의클래스는 객체지향 프로그래밍에서 객체를 생성하기 위한 설계도 또는 틀로, 객체가 공통적으로 소유한 속성과 행위를 추상화하여 코드로 나타낸 것이다. 이를 바탕으로 여러 객체를 만들 수 있다.   인스턴스(Instance)란?클래스에서 생성된 실체 객체를 의미한다. 클래스가 객체를 만들기 위한 설계도라면 인스턴스는 그 설계도로부터 만들어진 구체적인 실체이다. - 클래스 : 객체를 정의하는 설계도. 클래스를 사용하여 같은 구조를 가진 여러 객체를 만들 수 있다.- 인스턴스 : 클래스에서 실제로 생성된 객체. 클래스에서 정의된 속성과 메서드를 가지며 독립적인 값을 갖는다.    클래스의 구성- 클래스 헤더 : 클래스의 정의가 시작되는 부분. 클래스의 이름, 접근 제어자, 상속 여부 등을..

JAVA/기초공부 2024.09.25

[JAVA기초] 객체와 클래스의 개념

객체지향 프로그래밍(OOP) 이란?소프트웨어 개발 패러다임 중 하나로 프로그램을 여러 개의 객체들로 나누어 설계하고 개발하는 방법론이다.객체란 데이터와 이를 처리하는 함수를 하나로 묶은 개념으로, 현실 세계의 사물이나 개념을 컴퓨터 프로그램에서 표현하는 데 사용된다.   속성 (Attributes): 객체가 가지는 데이터 또는 상태ex) 자동차 객체라면 속성은 색상, 브랜드, 속도 가 될 수 있다.   메서드 (Methods): 객체가 할 수 있는 행동 또는 동작ex) 자동차 객체라면 메서드는 출발하기, 멈추기, 속도 변경하기 등이 될 수 있다.   속성과 메서드를 하나로 묶는다는 것은?예를 들면 자동차 객체의 속성은 빨간색, 도요타 브랜드, 현재 속도 50km 라고 가정할 수 있고,그 자동차의 가속 메..

JAVA/기초공부 2024.09.25

[JAVA기초] 연산자 - 할당, 산술, 단항, 관계, 논리, 조건, 복합할당

연산자: 수식과 결합하여 필요한 연산 동작을 수행하도록 하는 기호  할당 연산자기호 : =의미 : 우변의 값을 계산하여 좌변의 변수에 할당* 좌변에는 반드시 변수만 와야한다.int kk, tt, pp; // 정수형 변수 선언kk = 456785; // kk 에 값 할당tt = pp = kk ; // kk 에 저장된 값을 pp와 tt에 할당     산술 연산자: 산술 연산을 수행하기 위한 연산자기호 : +, -, *, /, % 등 을 이용하여 사칙연산int x = 100, y = 200;int addValue = x + y;int subtractValue = x - y;int multiValue = x * y;int divValue = x / y;int modValue = x % y;-> 각각의 연산 결과..

JAVA/기초공부 2024.09.18

[JAVA 기초] 기본 자료형 정리 - 정수형, 실수형, 논리형, 오버플로

기본 자료형 종류정수형 - byte, short, long, char실수형 - float, double논리형 - boolean   정수형(Integer) 각 자료형에 따라서 기억장소의 크기가 정해진다.byte 형 - 8 비트- 변수에 나타낼 수 있는 값의 범위 : -128 ~ 127short 형- 16 비트- 변수에 나타낼 수 있는 값의 범위 : -32768 ~ 32767int 형- 32 비트- -2147483648 ~ 2147483647long 형- 64 비트char 형- 16비트- 문자는 유니코드로 나타낸다- char 형은 int 형으로 형 변화가 가능하며 나타낼 수 있는 문자의 개수의 범위는 0 ~ 65535System.out.print("int 형 정수값 입력: ");int it = sc.next..

JAVA/기초공부 2024.09.16

[JAVA기초] 자바 프로그램의 구조

자바 프로그램의 구조- 패키지 문장- 임포트 문장- 클래스 정의- 인터페이스 정의    package 문- 자바 프로그램에서 가장 먼저 기술- 자바 프로그램이 컴파일 되어 생성된 클래스들이 그룹별로 분류되어 저장될 위치 지정- 생략해도 무방- 반드시 한번 만 기술 해야 함 import 문- 프로그램을 작성하는데 필요한 클래스 라이브러리를 포함시킬 때 사용- import 된 클래스 라이브러리에 정의되어 있는 멤버필드와 생성자, 메소드를 사용 가능 클래스 라이브러리란? 자바에서 제공하는 클래스들의 집합. 패키지 형태로 기능별로 분류되어있음  클래스와 인터페이스 정의인터페이스 : 메소드들을 선언만 함. 선언된 메소드들은 상속 되어 반드시 구현되어야 함클래스 : 멤버변수 선언, 생성자 및 메소드를 구현 주석한줄..

JAVA/기초공부 2024.09.12

[JAVA기초] 자바언어 개요

자바의 등장 배경자바는 1991년 "제임스 고슬링"과 그 연구원들이 가전제품들을 하나 네테워크와 연동하여 처리할 수 있게 하자는 목표로 "그린 프로젝트" 를 수행하면서 개발한 언어. 플랫폼에 독립적이면서 기존의 개발언어인 C언어나 C++ 언어의 단점을 개선하고, 배우기 쉽고 사용이 간단하도록 만든 객체지향언어 자바 언어 특징- 객체지향 언어임- 플랫폼에 독립적임 (어떤 운영 체제나 하드웨어에 상관없이 프로그램이 실행될 수 있음 ex. Windows, Mac, Linux 등 다양한 환경에서 별도의 수정 없이 동일하게 실행가능)- 분산 환경에 적합한 동적인 확장이 가능함 (여러 대의 컴퓨터나 서버가 연결된 네트워크 환경에서 프로그램이 원활하게 작동할 수 있고, 시스템에 변화가 생기거나 사용자가 늘어나도 쉽게..

JAVA/기초공부 2024.09.12