전체 글

저번 주에 공부한 게 아직 머리에 제대로 남지 않았나 보다… 문제를 풀 때도 그렇고 보면 볼 수록 모르겠고 복잡해서 진짜 또 너무 괴롭따..🫠 help me…참조변수를 이해하는데 너무너무너무 어려워서 참조변수랑 메모리 구조만 따로 먼저 정리를 해보려 한다.✅ 기본 변수 vs 참조 변수가 무엇인지 모르겠는가? → 글로 참조 변수가 주소를 가키킨다는 것은 너무나도 알겠다. 기본 변수의 타입이 int, string, double 등이 있다는 것도.. 근데 코드만 보면 도통 무슨 말인지 이해가 안된다. class를 호출해서 생성자를 만들고 인스턴스에 값을 넣기 시작하면서 머리가 복잡해졌다… 그래서 다시 정리가 필요할 듯 해서 차근차근 내가 이해하기 쉽게 정리해볼까 한다. 기본 변수와 참조 변수기본 변수는 물건이..
JAVA에서 배열은 고정된 크기의 데이터이다. 따라서 배열의 크기를 변경하거나 배열에 값을 추가하기 위해서는 새로운 배열을 할당하거나 List로 변환해주어야 한다. * 아직 List는 배우지 않아 배열을 배운 선에서 쓸 수 있는 메서드를 써볼까 한다. for문을 사용하지 않고 원래 있는 배열과 입력 받은 배열 값을 추가로 리턴하는 문제를 마주했다. for문을 쓰지마라니... 새로운 메서드를 찾아보았다. System.arraycopy 자바에서 배열을 복사하는 메서드이다. 이 메서드를 활용하면 쉽게 배열의 내용을 다른 배열로 복사할 수 있다. 메서드의 매개변수(parameter)로는 (Object src, int srcPos, Object dest, int destPos, int length) 다섯가지 요소..
메서드 오버로딩(Method Overloading) 메서드 오버로딩이란 하나의 클래스 안에 같은 이름의 메서드를 여러 개 정의하는 것을 의미한다. 매개변수의 개수, 자료형, 순서 등을 다르게 하여 같은 이름의 여러 기능을 하는 여러 개의 메서드를 만드는 것이다. 이것은 “overload”라는 영어단어의 사전적 의미 ‘과적하다 / 부담을 지우다’를 생각하면 이해하기 쉬운데 같은 이름의 메서드에 여러 기능을 구현 시키기 때문이라고 생각하면 된다. public class MethodOverloadingExample { public static void main(String[] args) { int a = 3, b = 5, c = 7; double d = 2.5, e = 4.8; System.out.printl..
필드 클래스 내부에 선언된 변수로, 클래스 내부의 메서드들에서 접근하여 사용할 수 있는 데이터를 필드라고 한다. 변수는 변수의 범위(space)와 수명(lifetime)에 따라 구분 클래스 변수(class variable), 인스턴스 변수(instance variable) 그리고 지역 변수(local variable)로 구분된다. class Example { // => 클래스 영역 int instanceVariable; // 인스턴스 변수 static int classVariable; // 클래스 변수(static 변수, 공유변수) void method() { // => 메서드 영역 int localVariable = 0; // 지역 변수. {}블록 안에서만 유효 } } 클래스 변수(Class Varia..
클래스(class) 클래스는 객체 지향 프로그래밍에서 객체를 생성하기 위한 일종의 설계도이다. 즉, 클래스는 객체의 속성과 동작을 정의하며, 이를 기반으로 객체를 생성할 수 있다. 클래스는 객체를 생성하는데 사용되며 객체는 클래스에 정의되고 설계된 내용 그대로 생성된다. 클래스를 정의함으로써, 객체를 생성하고 다양한 작업을 수행하는 데 필요한 속성과 동작을 미리 정의할 수 있다. 중요한 것은 클래스는 객체 그 자체가 아니라 객체를 생성하는 틀이라는 것이다. 휴대폰을 만들 때 휴대폰의 설계도이지 휴대폰 자체가 될 수 없는 것이다. 아래의 그림처럼 클래스를 통해 생성된 객체를 클래스의 인스턴스라고(instance)라고 부른다. 그럼 객체와 인스턴스의 차이가 무엇인지에 대해 또 궁금해진다. ✅ 객체와 인스턴스..
객체 지향 프로그래밍이란? 우리가 보고 느끼고 인지할 수 있는 모든 것을 객체(Object)라고 한다. 객체 지향 프로그래밍(OOP, Object Oriented Programming)은 현실 세계에서의 객체를 모델링하여 프로그래밍하는 방이다. 즉, 객체 지향 언어는 프로그램을 객체라는 작은 조각으로 나누고, 이러한 객체들이 서로 상호 작용하며 프로그램을 구성하는 방식을 의미한다. “어떤 기능을 어떤 순서로 할 것인가?”에 초점을 둔 절차 지향 언어와 달리 객체가 중심이 되어 “어떤 객체가 어떤 기능을 할 것인가?”가 중심이 된다. 프로그래밍에서 필요한 데이터를 한 데 모아 속성(attribute)과 행위(behavior)를 가진 객체를 만든다. 속성은 객체의 상태를 나타내며, 행위는 객체가 수행할 수 ..
배열 변수란 하나의 메모리 공간을 확보하는 것이다. int i; // 변수 선언 i = 100; // 값 할당 이러한 변수 값을 여러 개 묶어서 그룹화 하기 위해 사용하는 것이 배열이다. 서로 연관성이 있는 값들을 하나의 배열이라는 집합으로 묶어주는 것이다. 예를 들어, 아이돌 그룹이 음방 스케줄을 진행할 때 멤버 한 명 한 명씩 다 부른다고 생각을 해보자. 많은 그룹들이 참여하는 스케줄인데다가 그룹별로 멤버가 많은데 한 명 씩 부르는 것은 비효율적일 것이다. 팀명이 ‘자바’라면 ‘자바’멤버들 올라가실게요. 라고 하면 된다. 이것을 표현하면 다음과 같다. 자바 = {”콜라”, “누룽지”,”사이다”,”메리”} 자바는 변수고 콜라, 누룽지, 사이다, 메리 외 멤버들은 변수에 소속된 상수가 되는 것이다. 배열..
JAVA 반복문 JAVA의 반복문에는 for문, while문, do-while문이 있다. While for문은 정해진 횟수만큼 반복한다면 while문은 조건식이 true인 경우 계속해서 반복한다. (초기화); while(조건) { 실행문; // true인 경우 실행 } while구문은 true인 경우 계속해서 반복한다고 했다. 예를 들어 아래의 코드를 실행시킨다면 무한 반복 할 것이다. (강제 종료 시 Ctrl+C) package java_0419; public class whileEx { public static void main(String[] args) { while(true) { System.out.println("오늘도 파이팅 해야지!"); } } } 만약 false로 바꿔서 실행시키면 컴파일조..
JAVA 반복문 JAVA의 반복문에는 for문, while문, do-while문이 있다. For문 for문은 조건이 참인 동안 특정한 횟수(주어진 횟수만큼) 실행문을 반복 수행한다. for 문 작성 형식 for(초기화; 종료조건식; 반복실행) { 반복 실행 구문 } for 문 괄호 안에는 반복의 종료 조건이 들어오며 세 가지로 구성된다. * 그리고 for문에 이 형식들은 굳이 필요 없다 싶으면 쓰지 않아도 된다. 초기화, 종료 조건문, 반복 실행 초기화 : for문이 시작할 때 1회 실행 → 사용할 변수의 초깃값 종료 조건식 : 계속 반복할지 여부를 결정하는 조건으로 조건 값이 true라면 실행문 실행, false일 때 까지 반복 실행 반복실행 : 중괄호 구간의 실행이 끝나면 반복 실행 시작 → 변수에 ..
· DIARY
시간이 진짜 잘간다 : ) 벌써 4월 19일.. 수요일이라니잇! 말도 안돼🫠 열심히 하루를 살아가고 있다는 정거 라고 생각 해야지! 어제 이후로 좀 많이 긍정적으로 변한 것 같당ㅎㅎ 뭔가 오랜만에 책도 읽고 싶었는데 책 읽을 시간도 없었다.. 뭐라 해야할까... 진짜 시간이 그냥 너무 너무 잘 간다.. 화장실도 안 가고 밥도 안 먹고 그냥 컴퓨터만 보고 있는데 저녁이다🌆 ✅ 내일을 위한 오늘의 다짐 - 몸이 조금 더 건강한 하루를 만들자! - 바쁘게 정신없이 움직이자 : ) - 긍정적인 사고 적극적인 행동 내일은 저녁에 집중이 특히나 안 될 수 있는 날이라 쏘오 걱정쓰다. 하아... 사빠죄아!@@@!! 🙏오늘의 감사한 일(잘한 일) - 문제를 다 풀었다! - 부정적인 단어가 나올 때 마다 잘 참았다 : ..
밝빛솔
밝게빛나는 솔딩