반응형

JAVA 27

태태개발일지 - equals and hashcode 동시 재정의?

동등성 & 동일성자바에서 객체를 비교할 때는 equals() 메서드와 == 연산자를 사용한다.equals 메서드는 동등성 , == 연산자는 동일성을 의미한다. 쉽게 이야기하자면,equals : 객체의 값을 비교하는 것==:  객체의 실제 레퍼런스를 비교하여 동일한 객체인지 확인하는 것 ex)Test test = new Test("1");Test test2 = new Test("1"); equals 메서드를 재정의한 test1.equals(test2) // true test1 = test2 // false 이게 무슨 이야기인지 봐보자면,equals는 값을 비교했기 때문에 동등하다. 그래서 true가 나온것이고,== 는 객체의 레퍼런스를 비교했기 서로다른 객체이기 때문에   동일하지 않다.  라는 결과가 나..

JAVA 2024.12.05

태태개발일지 - Exception

예외처리 *throw로 예외를 발생시킬 수 있다. **thorws는 밖으로 예외를 던진다는 뜻* 체크예외특징: 1. 예외가 일어났을 때 throws 로 예외를 넘기거나 처리를 해주어야 한다.         2.{try catch}를 통해서 예외를 처리할 수 있다. 예외를 처리하지않고 계속 밖으로 예외를 던지다보면 runtimeExpetion이 뜬다. 그러면 프로그램이 멈추게된다.중간 로직에 예외를 잡지않아도 컴파일 에러가 뜨게 된다. 장단점:          장점: 꼭 예외를 잡아야만 하기 때문에 개발자가 실수로 넘겨도 확인할 수 있다.         단점: 일일이 싹다 잡아줘야하기 때문에 복잡하다. 예시) extends Exception 언체크 예외 특징 : 1. 예외를 잡아서 처리하지 않아도 thro..

JAVA 2024.10.14

Java 중급 - 영한쌤

Java 모든 클래스가 Object를 상혹하는 이유. -> 공통적인 부분 해결 -> 다형성 기본 구현 Object제공 기능 - toString() -> 객체 정보 - equals() -> 객체의 같음을 비교한다. - getClass() -> 객체의 클래스 정보를 제공하는 etc .. 사람마다 Object에 대한 기본 기능을 따로따로 구현하게 된다면 정말 많은 기능이 나올 것 이므로, 조금 단순화하고 공통화 시킨 것으로 말한다. -> 핵심이유. 다형성의 기본 구현 - Object는 모든 클래스의 부모 클래스이다. 즉 모든 객체를 참조할 수 있는 것이다. 모든 java 객체는 Object 타입으로 처리되기 떄문에. 다양한 타입의 객체를 통합적으로 처리할 수 있게한다. public class ObjectPol..

JAVA 2024.03.31

태태개발일지(JAVA 상속)

요즘은 퇴근 길에 인프런 강의중 김영한 선생님의 Java 기본 강의를 듣고있다. 자바에 대한 완벽한 심화 강의는 아니지만, 그래도 JAVA를 앞으로 계속 사용할 거라 돈을 주고 구매한 후 쭉 듣는데 상속 부분에서 머리에 넣어야 할 부분이 생긴 것 같아서 글로 작성한다. https://www.inflearn.com/course/%EA%B9%80%EC%98%81%ED%95%9C%EC%9D%98-%EC%8B%A4%EC%A0%84-%EC%9E%90%EB%B0%94-%EA%B8%B0%EB%B3%B8%ED%8E%B8 학습 페이지 www.inflearn.com 상속의 개념. 상속 : 비슷한 속성을 가진 객체들의 부모를 만들어서 중복된 코드를 제거하고, 재사용성을 늘린다. 기존에 인지하던 상속? 사실 상속에 대해서 공..

JAVA 2024.01.09

태태개발일지(Legucy jdk설정)

spiring legucy프로젝트에서 다양한 jdk버전을 사용할 기회가 생겨서 서칭을 해보다 좋은 방법을 알게 되어서 이렇게 글로 남긴다. 1. 기본적인 jdk 설정방법: Google에 원하는 jdk 버전을 입력한 후 다운로드를 받는다.  2. 고급시스템 설정에 들어가서 환경 변수에 들어간다. JAVA_HOME이라는 변수를 만들고 대표 JDK가 있는 경로를 설정한다.ex) C:\Program Files\Java\jdk1.8.0_202 그런 후 시스템 변수에서 Path를 찾아서 %JAVA_HOME%\bin이것을 입력해 준다.  여기까지는 동일하다. 하지만 여기서 편하게 하기위해서 새로운 방법을 사용할 것이다. 시스템 환경 변수에 이러한 경로를 설정한다.Path에서 편집을 누른후. C:\Program Fil..

JAVA 2023.12.05

태태개발일지(멀티스레딩 java)

멀티스레딩을 위한 간단한 운영체제 지식 형편없는 응답성: - 요청을 했는데 응답이 오지 않는 경우 ex) 만일 한 사람이 대량으로 구매하려는 상황이면 다른 사람은 그것을 기다려야하낟. 멀티스레딩은 이것을 해결해 줄 수 있다. - 멀티테스킹 병행성 : 동시에 여러가지 어플리케이션이 실행되고 있다고 느끼는 것. 성능면: 코어가 하나라도 여러가지의 어플리케이션이 실행되고있다는 것을 느낄 수 있어 좋다. (기계의 대수를 줄일 수 있다) 스레딩: 동작방식 - 컴퓨터를 키면 (운영체제) 라는 프로그램이 디스크 메모리에 로딩된다. -> 하드웨어 cpu 우리와의 상호작용을 조절한다. 사용자가 어플리케이션을 실행하면 운영체제는 디스크에 있던 프로그램을 메모리로 가져와 프로그램의 인스턴스를 생성한다. 이를(프로세스라고한다..

JAVA 2023.10.18

게임 플레이하기-oop프로그래밍

이 게임을 설명하고자 하면. 1. 게임이 시작된다. 🎲🎮 2.유닛의 정보를 입력한다. 3. 상대의 유닛 정보를 입력한다. 4.유닛의 레벨을 판별해 높은 유닛부터 공격한다 ---> 추가 요소 5.방어력과 공격력을 따져서 체력이 먼저 0아래로 내려가는 사람이 지는 것이다. 🔥 ---> 실행 배경이 되는 program이다. package com.codestates.seb.lol_program; public class LOL_Program { public static void main(String[] args) { //TODO: //시스템 시작 info System.out.println("[안내] TRPG 스타크래프트 시작합니다."); System.out.println("[안내] 자신의 유닛 정보를 입력해 주세..

JAVA 2023.02.24
반응형