프로그래밍 69

[JAVA의 신]열거형(enum)_상수의 집합

정의 : 열거형 > 여러 상수를 선언해야 할 때, 편리하게 선언할 수 있는 방법 클래스의 일종으로 관련 있는 상수들의 집합이다. 열거형을 이용하면 코드가 단순해지고 가독성이 높아진다. enum 클래스에도 보통 클래스와 같이 메서드를 선언해서 사용할 수 있다. enum Kind {CLOVER, HEART, DIAMOND, SPADE} 위 코드 처럼 작성해주면 자동적으로 0부터 시작하는 정수값이 할당된다. 이런 식으로 enum 클래스를 만들 수 있다. public enum OverTimeValues { THREE_HOUR, FIVE_HOUR, WEEKEND_FOUR_HOUR; } 사용법 : 열거형에 정의된 상수를 사용하는 방법은 'enum 클래스 이름.상수명'이다. 예 ) OverTimeValues.THRE..

도커 mysql 에러 해결방법_docker: Error response from daemon: Ports are not available: listen tcp 0.0.0.0:3306: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.

도커를 이용해서 mysql을 설정하려고 하는데 이미 3306번을 쓰고 있다는 에러가 발생하였다. 에러 사진 : 스택오버 플로우에서 찾은 해결법!! 작업 관리자 - > mysql 찾기 모두 작업 끝내기를 누른다. 다시 명령어를 cmd에 작성하면 에러가 발생하지 않음을 확인할 수 있다. 참고 : https://stackoverflow.com/questions/64307077/docker-compose-only-one-usage-of-each-socket-address-protocol-network-address Docker-Compose: Only one usage of each socket address (protocol/network address/port) is normally permitted I'm..

[intellij]인텔리제이 파일 형식 인식 오류 대처방법

파일을 만들다가 확장자를 안넣고 무심코 만들었을 때 html과 같은 파일을 인식하지 못하는 경우가 있습니다. 이럴때는 ctrl + alt + s를 눌러 preference에 들어가 Editor -> FileTypes에서 파일들을 둘러보면서 어디에 내 잘못입력된 파일명이 있는지 찾아보면 됩니다. 저는 file type auto-detected by~~에 있었고 memberList와 memberList.html을 삭제해주었더니 이처럼 잘 인식되는 것을 확인할 수 있습니다. https://ahn3330.tistory.com/63 [IntelliJ] 파일 형식에 맞지 않게 인식할 때 문제 webstorm에서 local_login.js 파일을 추가해야 됐는데, local_login 파일을 추가해서 위와 같은 팝업..

[JAVA의 정석]Ch7_다형성과 추상클래스

1. 다형성 (Polymorphism) 상속 관계에 있을 경우, 조상 클래스 타입의 참조변수로 자손 클래스의 인스턴스를 참조하도록 하는 것이 가능하다. SmartTv s = new SmartTv(); Tv t = new SmartTv(); 둘 다 같은 타입의 인스턴스 (smartTv)이지만 참조변수의 타입에 따라 사용할 수 있는 멤버의 개수가 달라진다. t와 s로 접근할 수 있는 멤버들이 다르다. 반대로, 자손타입의 참조변수로 조상타입의 인스턴스를 참조하는 것은 불가능하다. 상속관계에 있는 클래스 사이에서는 참조변수도 형변환이 가능하다. 조상타입의 참조변수로는 인스턴스의 멤버들을 모두 사용할 수 없기 때문에, 실제 인스턴스와 같은 타입의 참조변수로 형변환을 해야만 인스턴스의 모든 멤버들을 사용할 수 있다..

[도서리뷰]<성공하는 프로그래밍 공부법>

학교 도서관에서 프로그래밍 쪽을 서성이다가 이 책을 발견하였다. 취준을 시작하고 조금씩 공부를 해가면서 어떻게 공부를 해야하는지 막막한 기분으로 찾아갔던 도서관에서 이런 이름의 책을 발견했으니 집어 들 수밖에 없었다. 한번 읽고 마는 것이 아니라 계속 보면서 성공하는 프로그래머가 되기 위해 내용을 정리하였다. 책의 표지 목차 1. 프로그래밍 공부법 2. 의도적 수련과 소프트웨어 장인정신 3. 컴퓨터와 사람들과 소통하는 국어 이야기 4. 교양있는 당신을 위한 프로그래밍 공부법 1. 프로그래밍 공부법 사람들이 학습을 지속하려면 힘들 때 같이 공감하고, 격려해줄 사람이 필요하다. 아무리 온라인 컨텐츠가 많아도 결과적으로는 사람이 가장 중요하다. 가장 중요한 점은 작은 성취감을 지속적으로 맛보면서 프로그래밍에 ..

[JAVA의 정석]Ch7_객체지향_생성자와 상속

1-1. 생성자요? 생성자는 인스턴스가 생성될 때 호출되는 "인스턴스 초기화 메서드"이다. 생성자는 1. 리턴 값이 없고, 2. 생성자의 이름과 클래스의 이름은 같아야한다. + 생성자도 오버로딩이 가능하다. 생성자는 인스턴스를 생성하는 것이 아니고 단순히 인스턴스 변수들의 초기화에 사용되는 조금 특별한 메서드일 뿐이다. 사실 모든 클래스에는 반드시 하나 이상의 생성자가 정의되어 있어야한다. 지금까지 생성자 없이 인스턴스를 생성할 수 있었던 이유는 기본 생성자(Default constructor) 덕분이다. 기본 생성자는 컴파일러가 제공하는 생성자로 아무것도 하지 않아도 알아서 넣어준다. 이것은 클래스 내에 '생성자가 하나도 없을 때 '뿐이라는 것을 명심-!! 생성자를 이용한다면 인스턴스를 생성하는 동시에..

[JAVA의 정석]Ch6_객체지향_변수와 메서드(+static 블록)

1-1. 변수의 종류 - 인스턴스 변수, 클래스 변수, 지역변수 변수는 클래스 변수, 인스턴스 변수, 지역변수 모두 세 종류가 있다. 클래스 영역이 아닌 곳에서 선언된 변수는 지역변수 멤버 변수 중 static 이 붙은 변수는 클래스 변수 , 붙지 않은 변수는 인스턴스 변수이다. 인스턴스 변수는 인스턴스가 생성될 때 만들어진다. 인스턴스마다 별도의 저장공간을 가지므로 서로 다른 값을 가질 수 있다. 클래스 변수는 클래스가 메모리에 올라갈 때 생성된다. static를 붙이면 만들어지고 모든 인스턴스가 공통된 저장공간(변수)를 공유하게 된다. 인스턴스를 생성하지 않고 언제라도 바로 사용할 수 있다. 1-2. 메서드 메서드는 선언부와 구현부로 나뉜다. 선언부는 '메서드의 이름', '매개변수 선언', '반환타입..

깃허브와 슬랙(slack)연동하는 법

팀으로 개발을 할 때 개발을 하는 부분을 구분하여 각자 코딩하고 깃허브를 통해 통합하면 병렬적으로 코딩이 가능해 효율성이 올라간다. 이를 위해선 첫째, conflict가 되면 안된다. 둘째, git pull origin main을 잘 해야한다. 둘째의 연장선으로 커밋했다는 말을 매번 해야한다. "저 커밋했으니까 pull 한번 해주세요~" 이렇게 이게 여간 귀찮은게 아니다. 이를 간단하게 하기위해 slack과 깃허브를 연동하게 상대방이 커밋을 하면 slack에 메세지를 보내주는 방법이 있다. 방법은 간단하다. /github subscribe owner/reposiory를 slack에 입력하면 된다. https://github.com/dumi33/CheckMate_Project GitHub - dumi33/..