본문 바로가기

* Web/[Back] Java21

[Java] 자바 : 햇갈리는 this? 원리로 이해하는 개념 자바를 공부하다보면 this라는 것이 나온다. 이는 파이썬에서 self와 비슷하다. 하지만 왜 쓰는지 이유가 햇갈릴 때가 있다. 어떠한 개념이 나왔다는 것은 어떠한 문제점이 발생하여 해당 개념을 도입했다는 것이다. 발생한 문제점이 무엇인지 먼저 살펴보자. Problem) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 class Main { public static void main(String args[]) { User u = User("회원1", 1); } } class User { private String name; private int num; public User(String name, int num){ name = name; num = num; } } cs * 실행 로직 1... 2021. 3. 17.
[Java] 자바 : 접근 제한자 private을 우회적으로 접근하는 getter, setter 이해하기 2021.03.17 - [* Language/Java] - [Java] 자바 : 접근 제한자 큰 그림 이해하기 [Java] 자바 : 접근 제한자 큰 그림 이해하기 자바를 공부하다 보면 접근제한자라는 개념이 나온다.(public, private, default, protected) 이 접근제한자를 전체 큰 틀에 맞춰 빠르게 이해해보자. 접근제한자란 무엇인가? 공개 범위를 결정하는 하나 codinglevelup.tistory.com 이전 글에서 자바 전체에서 다루는 접근제한자에 대한 전체 큰 틀을 잡아봤다. 이 중 private에 대한 이해를 해볼려고 한다. 생각 해보기 private을 통하면 완전 비공개를 통해 어떠한 외부에도 공개를 하지 않는다. 하지만 인가된 사람이 접근을 할려고 할 때는 어떻게 해야 .. 2021. 3. 17.
[Java] 자바 : 접근 제한자 큰 그림 이해하기 자바를 공부하다 보면 접근제한자라는 개념이 나온다.(public, private, default, protected) 이 접근제한자를 전체 큰 틀에 맞춰 빠르게 이해해보자. 접근제한자란 무엇인가? 공개 범위를 결정하는 하나의 장치 잠금장치를 생각하면 쉽다. 외부인의 차단을 막기 위한 하나의 잠금체계이면서 인가된 사람은 접근을 허용 왜 사용 할까? 말 그대로 접근을 제한한다는 의미이다. 즉 인가되지 않은 사람에게 공유하고 싶지 않는 데이터를 보호함이다. 혹은 인가된 정보끼리는 접근을 허용하겠다는 의미다. 그래서 접근제한자의 종류와 정의를 한다면? public : 완전히 공개하겠다. : 다른 패키지에서 사용가능하도록 하겠다.(클래스, 인터페이스 등 외부로 공개 하는 역할) : But, 패키지를 외부 공개 했.. 2021. 3. 17.
[Java] 자바 : static의 개념은 무엇이고 왜 사용할까? static 이란 무엇일까? 영어 사전으로 "고정된"이라는 뜻이다. 그렇다면 어디에 고정되어 있을까? 바로 "메모리"이다. 이 메모리에 자동으로 고정시킴으로써 프로그램이 종료될 때 까지 계속해서 객체 "공유"를 한다는 의미이다. 즉 "공유"라는 핵심적인 키워드만 기억하면 된다. * 변수 ㄴ1. 인스턴스 변수 : 객체 내부에서 존재하는 변수 : static이 없는 일반적인 필드 ㄴ2. 클래스 변수 : 객체 외부에서 존재하는 변수 : static 키드워드가 필드에 적용된변수 * 메소드 ㄴ1. 인스턴스 메소드(static이 포함되지 않은 메소드) : 객체가 동작 시키는 메소드 Ex) 1. car.speed(); 2. void helloworld(){ System.out.println("인스턴.. 2021. 3. 16.
[Java] 자바 : 레퍼런스(Reference)란? A) 객체를 가리키는 타입의 큰 카테고리 변수의 타입은 크게 2가지로 나뉜다. 1. 기본형 2. 레퍼런스형 (기본형) : 변수를 직접적으로 가리킴 Ex) -1) int -2) double -3) boolean (레퍼런스형) -2) 레퍼런스형 : 변수를 간접적으로 가리킴 = 클래스 타입 = 사용자 정의형 타입 Ex) String Car... Why 사용할까? 즉, 객체 연결을 위한 하나의 타입 장치 2021. 3. 16.