일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 에러해결
- 회고록
- 백엔드로드맵
- 몰입학습 #몰입
- 시작 #꾸준히 #과하지않게
- git #intellij
- WSL2 #권한
- 롤중독
- Git #회고록
- Java환경
- 회고
- 코드스테이츠 #
- 회고록_코드스테이츠
- 코드스테이츠 #회고록
- 회고 #주간회고
- 네트워크 기초
- 인터넷 #ISP
- WSL #Linux #ubuntu
- 정리글 작성법
- jvm
- 코딩테스트
- JAVA기본
- String
- OOP
- 공부방식
- 호스트주소 #Host주소
- 피드백
- mapstruct
- 사용자계정 #WSL2
- 글 foramt
- Today
- Total
목록Java (22)
느리더라도 꾸준히
목표 static 을 공부하다보니, 정적바인딩과 동적 바인딩이란 개념을 알게되었다. 이 둘을 확실하게 구분하고 이해하자. 본문 바인딩 이란? 컴퓨터 프로그래밍에서 각종 값들이 확정되어 더 이상 변경할 수 없는 구속(bind) 상태가 되는 것. 프로그램 내에서 변수, 배열, 라벨, 절차 등의 명칭, 즉 식별자(identifier)가 그 대상인 메모리 주소, 데이터형 또는 실제값으로 배정되는 것이 이에 해당되며, 원시 프로그램의 컴파일링 또는 링크 시에 확정되는 바인딩을 정적 바인딩(static binding) 이라 하고, 프로그램의 실행되는 과정에서 바인딩되는 것을 동적 바인딩(dynamic binding) 이라고 한다. 프로그래밍에서는 바인딩을 가급적 뒤로 미루도록 권고하고 있다. [네이버 지식백과] [..
목표 객체지향 프로그래밍의 특징중 하나인 캡슐화를 사용하는 목적과 사용방식을 이해한다. 정리 캡슐화를 사용한 소스코드들은 구현한 내부 객체의 속성(필드)와 기능(메서드) 일부를 외부가 보지 못하도록 은닉해준다. 그러므로 코드의 낭비를 줄여주고 유지보수를 용이하게 만든다. 캡슐화를 습관화하여 코드를 작성시 더욱 객체 지향적인 코드가 완성 시키자. 필드 관점 : 외부에서 값을 변경하지 못하도록 private 접근제어자를 사용한다. 메서드 관점 : Tell don’t ask 법칙을 지키자. 즉 한 객체에서 사용된 메서드가 어떤 로직을 가지고 있는지 알지 못하도록 내부로직에서 사용될 메서드는 private로 로직을 끝내고 출력할 메서드만 public으로 선언하여 다른 객체에서 호출할수 있도록 만들어주자. 본문 ..

목표 메서드는 클래스내부에서 인스턴스 메서드와 static 메서드로 선언할수 있다. 이때 이 static 메서드가 왜 필요한지를 이해하고 어떤 장단점이 있는지 이해하자. 본문 static Method 정적메서드는 static 멤버들만 이용해서, 모든 인스턴스에 공유되는 메서드(명령모음)이다. 즉 해당 객체의 인스턴스 변수를 사용하지 않고, 메서드를 호출한다는 의미이다. 예를 들어 우리는 String.format(), Math.max(), Arrays.sort() 등의 메서드들은 해당 객체를 new로 생성하지 않아도, 해당 클래스의 메서드를 사용할 수 있다. 이는 바로 static 메서드가 클래스 영역에 저장되어 있기 때문이다. static Method 어떻게 사용할까? method 앞에 static만 붙..

글의 목표 Person kyu = new Person("steadykyu", "950204-xxxxxx","Seoul"); 위 코드대로 객체 생성 시, 각각의 데이터들이 Java 메모리의 어느 부분에 저장되는지 이해한다. Person 클래스 설명 class Person { String name; // 유저 닉네임이라고 해보자. PersonInfo personalInfo; public Person(String name, String socialNumber, String address) { this.name = name; personalInfo = new PersonInfo(socialNumber, address); } // 회원 가입 메서드 void save(){ // name과 personalInfo 를..
목표 while 문속의 switch를 사용하게 될때 발생하는 문제와 해결방안을 생각해봅시다. 본문 먼저 아래 코드를 봅시다. public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("====연산자만 입력해주세요===="); String operatorWord = input.next(); while(true){ switch (operatorWord){ case "+": case "-": case "*": case "/": break; default: { System.out.println("연산자를 다시 입력해주세요"); operatorWord = input.next(); continu..
목표 왜 배열을 복사하는지 알고 있다. 배열을 복사하는 두 메서드의 차이를 이해하고있다. System.arraycopy() String.copyOf() & String.CopyOfRange 배열 복사하기 배열은 같은타입으로 구성되고, 순서가 존재하며 크기를 정해놓는 자료구조입니다. 그러므로 한번 크기를 설정한 배열의 크기를 따로 수정하는 메서드는 존재하지 않습니다. 대신 배열을 복사하여 새로 만들면서 수정한 것과 같이 사용할 수 있습니다. 아래의 배열을 복사하는 두 메서드를 비교해 봅시다. 1.System.arraycopy() System.arraycopy(원본배열, 원본의 복사할 시작 index, 복사본 배열, 복사본 배열의 시작 index, 복사할 개수) public static void main(S..