Language

    [자바_API] java.lang패키지와 유용한 클래스(1)

    1. java.lang패키지 - 가장 기본이 되는 패키지이며, import문 없이도 사용이 가능하다. - 최상위 객체인 Object클래스 외에도, String, Math, Wrapper클래스가 있다. 1-1. Object클래스의 주요 메서드 +equals() 객체의 주소값을 비교한다. +hashCode() 객체의 해쉬코드를 반환한다. *모든 객체는 자신을 구분하는 고유의 해시코드를 가진다. *자바에서는 해싱 기법을 통해 다양한 객체를 구분하여 저장한다. +getClass() 객체의 인스턴스를 반환한다. +toString() "클래스이름+@+해쉬코드"문자열을 반환한다. #clone() 객체를 얕게 복사하여 반환한다. (객체 내 포함된 객체까지는 복사되지 않으므로, 겉의 객체만 복사되면, 안의 객체는 사실상..

    [자바_API] 입출력 I/O

    1. 스트림이란? 데이터를 운반하는데 사용되는 연결통로 [생각] BJ는 온라인방송을 할 때, 왜 "스트리밍 중"이라고 할까? 2. 바이트기반 스트림_InputStream/OutPutStream 추상클래스 상속 입력스트림 출력스트림 입출력 대상의 종류 FileInputStream FileOutputStream 파일 ByteArrayInputStream ByteArrayOutputStream 메모리(byte배열) PipedInputStream PipedOutputStream 프로세스(프로세스간의 통신) AudioInputStream AudioOutputStream 오디오장치 .... .... .... (1) InputStream 메서드 리턴타입 메소드 int read() 입력 스트림에서 1byte씩 읽고 b..

    [자바_API] 네트워킹

    [자바_API] 네트워킹

    1. 네트워킹이란? 두 대 이상의 컴퓨터를 케이블로 연결하여 네트워크를 구성하는 것 * 자바에서는 java.net 패키지를 활용해 네트워크 어플의 데이터 통신을 쉽게 작성 가능하다. https://www.youtube.com/watch?v=yR4hnj5XNP4&t=5s [참조 : OSI 7 계층, TCP 4 layer] https://velog.io/@dyllis/OSI-7%EA%B3%84%EC%B8%B5-%EC%A0%95%EB%A6%AC - OSI 7계층 : 물리계층 - > 데이타 링크 계층/ -> 네트워크계층/ -> 전송계층 / -> 세션 계층 -> 표현 계층 -> 응용계층 2. 클라이언트와 서버 * 서비스란? 서버가 클라이언트로부터 요청받은 작업을 처리하여 그 결과를 제공하는 것 - 클라이언트와 서..

    [자바의정석_복습] 예외처리

    보호되어 있는 글입니다.

    [자바_예제] 2차원 배열 _ 달팽이(snail) 배열

    >> 실행결과 차수 : 5 ---snail1--- [ 1 2 3 4 5] [ 16 17 18 19 6] [ 15 24 25 20 7] [ 14 23 22 21 8] [ 13 12 11 10 9] ---snail2--- [ 25 24 23 22 21] [ 10 9 8 7 20] [ 11 2 1 6 19] [ 12 3 4 5 18] [ 13 14 15 16 17] 또?(y/n) : n ----END---- [Snail 객체] package myutil; public class Snail { //Right -> Down -> Left -> Up //이 과정을 반복하되, //만약 움직이려는 방향에 값이 있을 경우, 현재 자리에서 이동하지 않고, //값을 넣지 않고 방향을 전환한다. //Right : col++ ..

    [자바_예제] 2차원 배열_로또 추첨

    보호되어 있는 글입니다.

    [자바API_AWT/Swing] 키보드 이벤트 구현하기

    ■ 사용할 객체 ▶ KeyAdaptor - KeyListener를 구현한 추상클래스이다. - getKeyCode() : void ---- Virtual Code를 확인할 수 있다. [참고 : 키보드 정보가 들어오는 방식] - 각 회사의 키보드 -> OS/JVM에서 Virtual Key Code로 받음(각 회사 키보드 동일하게 인식) - 키보드의 shift+[ ] 예를 들어, 소문자 a를 인식하는 게 아니다. (문자는 모두 대문자로 인식) - 말그대로 어떤 키보드를 눌렀는지를 값으로 받는다. ▶ KeyEvent - VK_xxxxx : Virtual Code Key를 의미하는 상수로, 언더바(_) 다음에 "LEFT","RIGHT","Q","R"등 키보드 키에 대한 상수를 받을 수 있다. ▶ Dimension..

    [자바API_AWT/Swing] 버튼 이벤트 구현하기

    [자바API_AWT/Swing] 버튼 이벤트 구현하기

    ■ xxxListener/xxxEvent/Action 관계 - 비유 참고 링크 : https://stackoverflow.com/questions/23033439/what-is-the-difference-between-actionlistener-and-actionevent-for-a-button [비유] 상점 주인 - 상점 주인이 가게에 들어와 직원들을 살핀다. - 그는 뭔가 문제가 발생한다면 행동을 할 준비를 하고 있다.(ActionListner) - 직원A가 일할 시간에 또 사무실에서 잠을 자고 있다. - 그는 마음먹은대로 행동을 돌입해야겠다 생각한다.(AcitionEvent) - 그는 직원A에게 다음번에 자르겠다 경고한다.(Action) ■ xxxListner와 xxxAdapter의 차이점 - XX..

    [자바API_AWT/Swing] 배치관리자와 레이아웃 종류(2)_윈도우창(JFrame) 예제

    [자바API_AWT/Swing] 배치관리자와 레이아웃 종류(2)_윈도우창(JFrame) 예제

    ■ 공통부분 - 윈도우창이기에 컨테이너는 JFrame을 사용한다. - 아래의 예제들에서 JFrame의 세팅값(위치/크기/보임상태/종료버튼방식)은 모두 동일하게 할 것이다. ■ BorderLayout - JFrame컨테이너의 디폴트 배치관리자는 BorderLayout이다. - BorderLayout은 컴포넌트 간격을 지정하지 않을 거면 초기화를 딱히 해줄게 없다. - 컴포넌트를 넣어줄 때 어느 영역(North/South/West/East/Center)에 위치시킬지 지정해준다. package window; import java.awt.BorderLayout; import javax.swing.JButton; import javax.swing.JFrame; public class BorderLayoutTest..

    [자바의정석_예제] 객체지향프로그래밍1

    [자바의정석_예제] 객체지향프로그래밍1

    더보기 class SutdaCard{ //카드의 숫자.(1~10사이의 정수) int num; //광이면 true, 아니면 false boolean isKwang; } 더보기 package objectprogm1; public class Q6_2 { public static void main(String[] args) { SutdaCard card1 = new SutdaCard(3, false); SutdaCard card2 = new SutdaCard(); System.out.println(card1.info()); System.out.println(card2.info()); } } class SutdaCard{ final static int MIN_NUM = 1; final static int MAX_..