Loading...
2023. 2. 11. 01:41

자바 기본 배우기 -변수에 대해-

1. 변수 종류 1-1) 클래스 변수(class variable) 클래스 영역에 선언 static 키워드를 사용해야함 클래스 영역은 어디인데..? class Person { static int person_count; } Person 클래스가 메모리에 올라갔을 때 static으로 선언된 클래스 변수인 person_count가 생성 현재 위 예시에서 person_count를 초기화하지 않았는데.. 어떤 값으로 초기화될까? 자료형의 기본값으로 초기화됨 여기서 int형이니까 0으로 초기화됨 static int person_count = 0;과 동일함 참고로 클래스 변수의 소멸시기는 프로그램 종료시이다. 접근 방법은? 객체 생성과는 무관하게 (클래스 이름).person_count 식으로 접근 >>> 모든 인스턴..

2023. 2. 8. 01:52

자바 기본 배우기 -자바에서 함수와 클래스 기본-

1. 클래스란 무엇인가 사람의 정보를 관리하고 싶다 가장 쉬운방법은 변수들을 만들어서 일단 무작정 넣어놓는것 package com.ssafy.class01; public class PersonTest { public static void main(String[] args) { String name1 = "Yang"; String name2 = "Hong"; int age1 = 45; int age2 = 25; String hobby1 = "Youtube"; String hobby2 = "Golf"; } } 하지만 사람이 더 늘어난다면? 동일한 자료형들을 하나로 묶어서 관리할 수 있는 배열을 사용 그러면 반복문도 사용 가능해지고 코드도 간결해지고.. //배열 사용 int size = 2; String[] ..

2023. 2. 7. 01:27

자바 기본 배우기 -객체지향프로그래밍이란-

1. 객체지향 프로그래밍(OOP, Object Oriented Programming) "현실세계는 모두 객체로 이루어져 있으며, 현실세계에서 발생하는 사건들은 객체와 객체의 상호작용으로 이루어진다" 사람이 컴퓨터로 검색하고 프로그래밍하면 컴퓨터는 검색에 대한 결과, 프로그래밍의 결과인 프로그램을 제공 상호작용은 클래스의 메소드로 나타남 1) 객체: 사물과 같이 유형적인 것과 개념이나 논리와 같은 무형적인 것들 유형적인 것? = 자동차, 자전거, 스마트폰 등등 물리적인 형태 무형적인 것? = 눈에 보이지만 인지하고 쓸 수 있는 학과, 강의 등등 2) 지향(指向): 작정하거나 지정한 방향으로 나아감 3) 객체 모델링: 현실세계의 객체를 SW객체로 설계하는 것이다 예를 들어 사람은 어떤 것들을 가지고 있을까?..

2023. 1. 10. 21:20

리액트 기본 배우기 -컴포넌트에 대하여-

1. 컴포넌트 기반의 구조 리액트에서는 모든 페이지가 컴포넌트로 구성되어 있고, 하나의 컴포넌트는 또 다른 여러 개의 컴포넌트의 조합으로 구성될 수 있다. 이러한 컴포넌트들을 마치 레고 블록을 조립하듯이 끼워 맞춰서 새로운 컴포넌트를 만들 수 있다 에어비앤비 웹사이트 화면을 캡쳐하고 컴포넌트를 간단히 표시한 것이다. A, B로 표시된 부분이 리액트 컴포넌트이다. 이러한 컴포넌트를 여러 번 반복적으로 사용해서 하나의 페이지를 구성하고 있다. 이처럼 리액트는 작은 컴포넌트들이 모여서 하나의 컴포넌트를 구성하고, 이러한 컴포넌트들이 모여서 전체 페이지를 구성한다. 이렇게 하나의 컴포넌트를 반복적으로 사용함으로써 전체 코드의 양이 줄어 자연스레 개발 시간과 유지 보수 비용도 줄일 수 있다. 2. 리액트 컴포넌트..

2022. 9. 13. 04:16

트리 이론 기본편3 -이진 트리를 표현하는 방법 + 순회 구현 -

1. 배열을 이용한 이진 트리 표현 루트의 번호를 1로 하고 레벨 n에 대하여 왼쪽부터 오른쪽으로 $2^{n}$부터 시작하여 번호를 부여 노드 번호를 index로 해서 배열에 노드 정보를 저장 완전 이진트리일때만 가능할듯 아니라면 빈 부분은 0으로 채우고 데이터를 넣으면 될것 같은데 조금 복잡해질것 같고 높이 h가 주어진다면.. h의 노드 최대개수는 $2^{h+1}-1$개니까 [0]*$2^{h+1}-1$으로 초기화 노드 개수 n개가 주어진다면 뭐 [0]*(n+1)로 초기화하면 될듯 라고 생각했는데.. 이게 아니야 왜 그런지는 뒤에 쓴다 1-1) 노드 번호의 특징 완전이진트리처럼 번호를 붙이는 방식인 1번부터 n번까지를 왼쪽부터 오른쪽으로 차례대로 붙일때만 성립함 1)레벨 n의 시작 노드 번호는 $2^{n..

2022. 7. 30. 19:52

객체 지향 프로그래밍이란 2편 -객체는 무엇인가-

1. 객체(object) - 클래스에서 정의한 것을 토대로 메모리(실제 저장공간)에 할당된 것으로 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며 변수, 자료구조, 함수 또는 메소드가 될 수 있다 - 객체는 속성(attribute)과 행동(method)으로 구성된 모든 것 - 속성은 변수로 나타내고 행동은 함수로 나타내는데 특별히 class에서는 행동을 method라고 부른다 예시) 가수 태연이라는 존재를 프로그래밍 세계로 옮긴다면? 노래(), 댄스() 직업: 가수, 생년월일: 1989년 3월 9일, 국적: 대한민국 ----------------------------------------------------------------------------------- 태연.노래() ..