명품자바 프로그래밍의 기초: 6장
·
Java
자바 프로그래밍 객체지향 개념 요약 (코드 포함)1. 패키지 개념과 필요성자바에서 패키지는 클래스와 인터페이스를 묶어주는 그룹입니다. 여러 사람이 협력하여 자바 프로그램을 개발할 때, 동일한 이름의 클래스가 존재할 가능성이 있기 때문에 패키지를 사용하여 충돌을 방지할 수 있습니다. 패키지를 사용하면 관련된 클래스 파일을 계층화하여 관리할 수 있으며, 패키지별 접근 권한을 설정할 수 있습니다.코드 예시:package com.example.myapp; // 패키지 선언public class MyClass { // 클래스 내용}2. Object 클래스Object 클래스는 자바의 모든 클래스의 최상위 슈퍼클래스입니다. 모든 자바 클래스는 Object 클래스를 상속받으며, 기본적으로 상속되는 메소드들(toS..
명품자바 프로그래밍의 기초: 5장
·
Java
1. 상속(Inheritance) 개요상속은 객체 지향 프로그래밍의 중요한 개념 중 하나로, 자식 클래스가 부모 클래스의 속성과 메소드를 물려받아 사용할 수 있도록 합니다. 이는 마치 생물학에서 자식이 부모의 유전적 특성을 물려받는 것과 유사합니다. 상속을 사용하면 코드의 재사용성이 높아지고, 중복된 코드를 줄일 수 있어 유지보수가 용이해집니다.1.1 상속의 장점클래스의 간결화: 부모 클래스에서 정의된 멤버를 자식 클래스가 물려받으므로, 자식 클래스에서 동일한 특성을 재정의할 필요가 없어 코드가 간결해집니다.클래스 관리의 용이성: 상속을 통해 클래스들을 계층적으로 분류할 수 있으며, 클래스 구조가 명확해지고 관리가 쉬워집니다.소프트웨어 생산성 향상: 상속을 통해 기존 클래스의 기능을 확장하거나 새로운 클..
자료구조 3장
·
자료구조
1. 배열(Array) 개요배열은 컴퓨터 과학에서 가장 기본적이고 널리 사용되는 자료구조 중 하나입니다. 연속된 메모리 공간에 동일한 데이터 타입의 원소를 저장하는 방식으로, 모든 프로그래밍 언어에서 기본적으로 제공하는 자료구조입니다. 배열은 데이터에 빠르게 접근할 수 있는 방법을 제공하기 때문에 다양한 알고리즘과 프로그램에서 자주 사용됩니다.1.1 배열의 구조배열은 정해진 크기의 연속된 메모리 공간에 원소를 순차적으로 저장합니다. 배열의 크기는 초기화 시에 결정되며, 배열에 할당된 메모리 공간은 크기가 고정되어 변경할 수 없습니다. 배열의 각 원소는 인덱스를 통해 접근할 수 있으며, 이 인덱스는 0부터 시작합니다. 예를 들어, int arr[5]라는 배열이 있다면, 이 배열의 첫 번째 원소는 arr[0..
명품자바 프로그래밍의 기초: 4장
·
Java
객체 지향 프로그래밍의 핵심 개념 정리이 글에서는 자바의 객체 지향 프로그래밍(OOP)에서 중요한 개념인 객체, 클래스, 상속, 다형성, 캡슐화 등을 소개합니다. 자바에서 이 개념들을 어떻게 구현하고 활용하는지 다양한 예제와 함께 설명합니다.1. 객체와 클래스객체(Object): 실세계의 사물이나 개념을 컴퓨터 프로그램에서 표현한 것. 객체는 상태(state)와 행동(behavior)을 가집니다.클래스(Class): 객체를 만들기 위한 설계도. 클래스는 객체의 속성(필드)과 동작(메소드)을 정의합니다.class Circle { int radius; // 필드 String name; // 필드 double getArea() { // 메소드 return 3.14 * radius ..
네트워크에 대한 전반적인 기초 지식 정리
·
네트워크/네트워크 관련지식
네트워크에 대한 전반적인 기초 지식 정리.네트워크 구성네트워크 (네트워크 기술)네트워크 기술이란 서버와 클라이언트의 정보가 오고 가는 다리 역할을 하는 기술의 총칭을 의미한다.네트워크라는 말은 연결되어 있다라는 뜻으로 컴퓨터 네트워크는 데이터를 케이블에 실어 나르는 것을 의미한다.(무선 LAN은 전파로 데이터를 실어 나른다.)LAN (Local Area Network)LAN 이란 기업이나 조직 등 비교적 좁은 범위 안에 존재하는 컴퓨터 네트워크를 의미한다.LAN은 LAN 케이블을 이용하여 데이터를 전송하는 유선 LAN과 전파를 이용하여 데이터를 전송하는 무선 LAN으로 구분한다.LAN 케이블 이란LAN 케이블은 LAN을 연결 하기 위한 케이블LAN 스위치 란LAN 스위치는 LAN을 구성하기 위한 네트워크..
명품자바 프로그래밍의 기초: 3장
·
Java
자바 반복문 및 배열 사용법 정리이 글은 자바 프로그래밍에서 반복문과 배열을 어떻게 사용하는지에 대한 기본적인 내용을 다루고 있습니다. 이 글에서는 for, while, do-while 문을 비롯해 다양한 반복문과 배열의 개념을 설명하고, 실습 예제들을 통해 이해를 돕습니다.1. 자바의 반복문자바에서 반복문은 특정 코드를 여러 번 실행하고자 할 때 사용합니다. 자주 사용하는 반복문으로는 for, while, do-while이 있습니다.For문: 특정 횟수만큼 반복하고자 할 때 유용합니다.기본 구조:for(int i=0; i이 반복문은 i가 0부터 시작해 9까지 반복하며 출력합니다.While문: 조건이 참인 동안 반복을 계속합니다.기본 구조:while(조건) { // 실행할 코드}예제:int coun..
DNS(Domain Name System)
·
네트워크/네트워크 관련지식
DNS란?도메인 네임 시스템(Domain Name System, DNS)은 호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있도록 하기 위해 개발되었다.위키백과에서는 DNS를 이렇게 설명하고 있다.예를 들면 우리가 자주 접하는 naver.com , google.com 모두 DNS을 가진 DN(Domain Name)이라고 할 수 있다.이들은 사실 문자열의 탈을 쓴 IP라고 볼 수 있다.cmd에서 구글과 naver의 DN을 적어 ping을 확인해 보자보다시피 google.com 의 IP 주소는 172.217.161.174naver.com의 IP 주소는 210.89.164.90 각각 확인할 수 있다.(naver.com에서는 ping을 받아오는걸 실패했는데, 네이버에서 막아..
자료구조 2장
·
자료구조
성능 분석 및 Big-O 표기법성능 분석은 자료구조와 알고리즘에서 매우 중요한 개념으로, 프로그램이 얼마나 효율적으로 동작하는지를 평가하는 기준입니다. 성능 분석은 주로 시간 복잡도와 공간 복잡도를 통해 이루어지며, 이를 표현하는 데 가장 널리 사용되는 방법이 Big-O 표기법입니다.1. 성능 (Performance)성능이란 동일한 결과를 도출하기 위해 사용된 자원의 양을 의미합니다. 성능 분석에서는 주로 프로그램이 실행되는 시간을 측정하는 시간 복잡도(Time Complexity)와, 프로그램이 실행되는 동안 필요한 메모리의 양을 측정하는 공간 복잡도(Space Complexity)가 주요 평가 요소입니다.최선의 경우(Best Case), 평균의 경우(Average Case), 최악의 경우(Worst ..
명품자바 프로그래밍의 기초: 2장
·
Java
자바 프로그래밍의 기초: 2장 - 자바 프로그래밍의 기본 구조자바 프로그래밍의 두 번째 장에서는 자바 언어의 기본 문법과 구조를 소개합니다. 이 장에서는 자바 프로그램이 어떻게 구성되고, 어떤 방식으로 동작하는지를 이해하는 것이 핵심입니다. 자바 프로그램의 기본적인 구조, 변수와 데이터 타입, 연산자, 제어문 등을 다루며, 자바의 기초를 탄탄히 다질 수 있습니다.1. 자바 프로그램의 기본 구조자바 프로그램은 클래스(class)와 메소드(method)로 구성됩니다. 모든 자바 프로그램은 최소 하나 이상의 클래스를 포함하며, 이 클래스는 프로그램의 기본 단위가 됩니다. 자바 프로그램의 실행은 main() 메소드에서 시작됩니다. main() 메소드는 자바 프로그램의 진입점으로, 프로그램 실행 시 가장 먼저 호..
[TIL]개발 아티클 사전 3주
·
TIL/스파르타 TIL
아티클_사전2주) 생성형 AI 란?🌟 생성형 AI(Generative AI)에 대하여생성형 AI(생성형 인공지능)는 대규모 데이터 세트를 기반으로 훈련된 딥러닝 모델을 사용하여 새로운 콘텐츠를 생성하는 일종의 인공지능 기술입니다. 새로운 데이터를 생성하는 데 사용되는 생성형 인공지능 모델은 차이점을 기반으로 데이터를 분류하는 데 사용되는 판별 AI 모델과는 반대되는 개념입니다. 오늘날 사람들은 생성형 AI 애플리케이션을 사용하여 문서, 사진, 코드 등을 만듭니다. 생성형 AI의 일반적인 활용 사례로는 챗봇, 이미지 생성과 편집, 소프트웨어 코드 지원, 과학 연구 등이 있습니다.사람들은 전문적인 환경에서 생성형 AI를 사용하여 독창적인 아이디어를 빠르게 시각화하고, 지루하고 시간이 많이 소요되는 작업을 ..