JAVA 9

강한 결합과 약한 결합의 차이는 뭘까?

강한 결합이란 무엇이고 약한 결합은 무엇일까..? 강한 결합, 약한 결합.. 말로만 들으면 어떤 의미인지 짐작하기가 어렵다. 코드를 보기 전에 먼저 예시를 차로 들어서 설명을 하자면 차에서 엔진은 쉽게 교체 할 수 없는 부품이고 차에 종속적인 부분이다. 하지만 바퀴의 경우 경우에 따라 바껴야 하며 차에 종속적이지 않다. 차로 예로 들었을때 엔진은 강한 결합이고, 바퀴는 약한 결합이라고 볼 수 있다. 마지막으로 하나의 예시를 더 든다면 테스크 탑의 경우 장소에 고정되기에 강한 결합이라고 볼 수 있고 노트북의 경우 장소에 고정적이지 않기 때문에 약한 결합이라고 볼 수 있다. 이제 코드를 본다면 강한 결합을 간단하게 아래의 코드로 설명할 수 있다. Mario 게임을 만든다고 가정을 해보자. Mario 게임의 ..

JAVA 2024.06.10

CodeTree 3일차

값의 변경을 위해서 기존의 값을 정수로 선언한 temp라는 값에 기존의 복사 할 값을 저장해둬야 한다.public class Main { public static void main(String[] args) { // 변수 선언 int a = 5, b = 6, c = 7; // 교체 int temp = a; a = c; c = b; b = temp; // 출력 System.out.println(a); System.out.println(b); System.out.println(c); }}출력 결과756 하나의 변수의 값을 2개 이상의 다른 변수의 값으로 지정하기..

JAVA 2024.05.08

이것이 자바다 7강

상속 1. 상속 개념 상속이란 하위 클래스에게 물려주는 것을 의미한다. 부모 클래스에서 private 접근 제한을 갖는 필드와 메소드는 대상에서 제외되며 부모 클래스와 자식 클래스가 다른 패키지에 존재한다면 default 접근 제한을 갖는 필드 메소드도 제외된다. 상속을 이용하게 된다면 클래스 A를 상속받는 B와 C는 A필드의 메소드를 수정시 B와 C를 수정하지 않아도 수정된 A의 필드와 메소드를 사용할 수 있다. public class A{ int field1; void method1(){} } public class B extends A{ int field2; void method2(){} }2. 클래스 상속 자바의 경우 다중 상속을 허용하지 않는다. extends 뒤에는 단 하나의 부모 클래스만 상..

JAVA 2023.01.13

이것이 Java다 2강

2. 변수와 타입 변수란? 프로그램이 작업을 처리하며 필요에 따라 데이터를 저장할 때 하나의 값을 저장할 수 있는 메모리 공간이며 복수 개의 값을 저장할 수 없다. 변수의 작성 규칙 대소문자가 구분된다 : firstname , firstName은 다른 변수이다. 첫 문자는 영어 소문자이며 다른 단어가 붙을 경우 첫 문자를 대문자로 한다 : maxSpeed, carBodyColor 변수명을 보고 어떤 값을 저장하고 있는지 쉽게 알 수 있도록 변수명을 짓는것이 좋다. 정수타입 정수타입의 크기와 표현할 수 있는 범위 byte : 1byte 8bit , -128 ~ 127 색상 정보 및 파일 또는 이미지 데이터를 처리할 때 주로 사용된다. char : 2byte 16bit , -32768 ~ 32767 문자를 ..

JAVA 2023.01.03

이것이 Java다 1강

1. Java 시작하기 Java란 프로그래밍 언어는 고급 언어와 저급 언어로 나뉘는데 Java는 대표적인 고급 언어이며 사람이 쉽게 이해할 수 있도록 제작되었기에 컴파일 과정을 거친다. 저급 언어에는 어셈블리어가 대표적으로 속한다.Java의 특징 윈도우에서 개발한 프로그램을 유닉스나 리눅스에서 실행 시 소스 파일을 수정후 재컴파일 과정을 거치는데 이러한 과정을 수행하지 않고 자바 실행 환경이 설치된 모든 운영체제에서 바로 실행이 가능하기에 이식성이 높은 언어이다. 역활에 맞는 객체들을 작성해 하나의 설계도인 클래스를 제작해 사용하기에 객체 지향적 언어이다. 직접 메모리에 접근할 수 없도록 설계되었으며 메모리 관리를 자동으로 관리해준다. 여러 개의 객체가 서로 연결되어 실행되는데 이 과정에서 모든 객체를 ..

JAVA 2023.01.03

equals , ==의 차이

생성할 원소의 개수와 찾을 문자열을 첫 줄에 입력하고 앞에서 선언한 원소의 개수만큼의 문자열을 입력한 후 해당 문자열에 찾을 문자열이 포함된 위치를 찾는 순차 탐색 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTo..

JAVA 2022.10.22

이것이 JAVA다 6강

참조 변수 참조 변수의 기본 틀은 아래의 사진과 같이 변수에 값이 저장되는 것이 아니라 객체를 생성하고 변수는 객체를 참조한다. 변수는 스택 영역에 생성이 되고 해당 값인 객체1, 객체2는 힙 영역에 String 객체로 생성된다. 그리고 스택의 변수에는 String 객체의 주소 값이 저장된다. 참조 변수 String형의 경우 클래스 다입이므로 참조 타입이다. 다른 객체를 참조하고 있으며 null값을 가지고 있는 에러가 발생한다는 것은 객체를 참조하기에 null값이라는 에러가 발생할 경우라면 참조할 객체가 없다는 의미이므로 NullPointException이 발생하게 된다. 참조 타입 예제 String name1 = "신용권"; String name2 = "신용권"; 자바에는 문자열 리터럴이 동일하다면 같..

JAVA 2022.08.16

이것이 JAVA다 5강

Java Class 기본 구조 public class Phone { // 클래스 선언 : 어떠한 객체의 변수, 메서드의 집합 int name = iphone; // 필드 부분 : 객체 데이터가 저장되는 곳 public void method() { // 메서드 부분 : 객체의 동작을 수행하는 부분 System.out.println(name); } } 참고자료 : https://sgcomputer.tistory.com/66 데이터 타입 분류 기본 타입과 참조 타입의 차이점은 기본 타입의 경우 선언된 변수는 실제 값을 변수 안에 저장하지만 참조 타입의 경우 선언된 변수는 머모리의 번지를 값으로 갖는다. java.exe로 JVM이 시작되면 JVM은 운영체제에서 할당받은 메모리 영역을 다음과 같이 세부 영역으로 ..

JAVA 2022.08.16