본문 바로가기

자바

[내가 만든 프로젝트 코드 분석 | 리듬게임 만들기] 11.키보드 입력 이벤트 리스너 package dynamic_beat_11; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; public class KeyListener extends KeyAdapter { // 키보드 이벤트 클래스 @Override public void keyPressed(KeyEvent e) { // 키 이벤트 감지 if(DynamicBeat.game == null) {// 현재 게임이 진행되지 않는다면 함수종료 return; } if(e.getKeyCode() == KeyEvent.VK_S) { // 누른 키 S 감지 DynamicBeat.game.pressS(); // pressS메소드 작동 } . .생략 . } @Override //키를 떼.. 더보기
[내가 만든 프로젝트 코드 분석 | 리듬게임 만들기] 8.게임화면으로 이동하기 곡 선택화면에서 게임화면으로 이동할 수 있는 버튼을 만듭니다 private ImageIcon easyButtonEnteredImage = new ImageIcon(Main.class.getResource("../images/easyButtonEntered.png")); private ImageIcon easyButtonBasicImage = new ImageIcon(Main.class.getResource("../images/easyButtonBasic.png")); private ImageIcon hardButtonEnteredImage = new ImageIcon(Main.class.getResource("../images/hardButtonEntered.png")); private ImageIcon.. 더보기
[내가 만든 프로젝트 코드 분석 | 리듬게임 만들기] 7. 곡 선택 기능구현 왼쪽 오른쪽 버튼을 눌러서 곡을 선택할 수 있도록 기능을 구현합니다. startButton기능에서 곡 선택 화면에 들어가면 메인음악이 꺼지고 선택곡의 하이라이트가 나오도록 합니다. @Override public void mousePressed(MouseEvent e) { Music buttinEnteredMusic = new Music("buttonEnteredMusic.mp3", false); buttinEnteredMusic.start(); introMusic.close(); // 곡선택 화면에서 메인음악 끄기 Music selectedMusic = new Music("Again Selected.mp3", true); selectedMusic.start(); // 곡 하이라이트 재생 selectTra.. 더보기
[자바의정석 | Chapter 06 객체지향 프로그래밍1] 변수의 초기화 1. 학습목표 변수의 초기화를 통해 클래스 사용을 이해할 수 있다. 2.필요 개념 문장정리 변수의 초기화 변수를 선언하고 처음으로 값을 저장하는 것을 변수의 초기화라고 한다. 멤버변수(클래스변수와 인스턴스변수)와 배열은 초기화는 선택적이지만 지역변수의 초기화는 필수적이다.연산자 new가 인스턴스를 생성하는 것이지 생성자가 인스턴스를 생성하는 것이 아니다. 멤버변수의 초기화 방법 명시적 초기화 생성자 초기화블럭 클래스 초기화 블럭은 클래스가 메모리에 처음 로딩될 때 한번만 수행되며 인스턴스 최기화 블럭은 생성자와 같이 인스턴스를 생성할 떄 마다 수행된다. 생성자보다 인스턴스 초기화 블럭이 먼저 수행된다. 3. 코드작성 class StaticBlockTest { static int[] arr = new in.. 더보기
[자바의정석 | Chapter 06 객체지향 프로그래밍1] 인스턴스의 복사 1. 학습목표 인스턴스의 복사를 통해 생성자의 사용을 이해할 수 있다. 2.필요 개념 문장정리 현재 사용하고 있는 인스턴스와 같은 상태를 갖는 인스턴스를 하나 더 만들고자 할 때 생성자를 사용할 수 있다. 두 인스턴스가 같은 상태를 갖는다는 것은 두 인스턴스의 모든 인스턴스 변수가 동일한 값을 갖고 있다는 것을 뜻한다. Car클래스의 참조변수를 매개변수로 선언한 생성자이다. 매개변수로 넘겨진 참조변수가 가리키는 Car인스턴스의 인스턴스변수인 color, gearType, door의 값을 인스턴스 자신으로 복사하는 것이다. 어떤 인스턴스의 상태를 전혀 알지 못해도 똑같은 상태의 인스턴스를 추가로 생성할 수 있다. 3. 코드작성 class Car { String color; String gearType; .. 더보기
[자바의정석 | Chapter 06 객체지향 프로그래밍1] 생성자 1. 학습목표 생성자에 대해 이해할 수 있다. 2.필요 개념 문장정리 생성자 생성자는 인스턴스가 생성될 때 호출되는 인스턴스 초기화 메서드이다. 인스턴스초기화란 인스턴스변수들을 초기화하는 것을 뜻한다. 생성자 역시 메서드처럼 클래스 내에 선언되며 구조도 메서드와 유사하지만 리턴값이 없다는 점이 다르다. 1.생성자의 이름은 클래스의 이름과 같아야한다. 2.생성자는 리턴값이 없다. 연산자 new가 인스턴스를 생성하는 것이지 생성자가 인스턴스를 생성하는 것이 아니다. 생성자는 단순히 인스턴스변수들의 초기화에 사용되는 메서드일 뿐이다. card c = new Card(); 연산자 new에 의해서 메모리에 Card클래스의 인스턴스가 생성된다. 생성자 Card()가 호출되어 수행된다. 연산자 new의 결과로 생성된.. 더보기
[내가 만든 프로젝트 코드 분석 | JSP게시판 만들기] 13.게시물 수정 기능 구현하기 BbsDAO클래스에 수정기능을 구현합니다. public int update(int bbsID, String bbsTitle, String bbsContent) {// 매개변수로 변경 String SQL = "UPDATE BBS SET bbsTitle = ?, bbsContent = ? WHERE bbsID = ?"; try { PreparedStatement pstmt = conn.prepareStatement(SQL); pstmt.setString(1, bbsTitle); pstmt.setString(2, bbsContent); pstmt.setInt(3, bbsID); // 특정아이디에 해당하는 게시물의 제목과 내용변경 return pstmt.executeUpdate(); } catch (Except.. 더보기
[내가 만든 프로젝트 코드 분석 | JSP게시판 만들기] 12.게시물 상세보기 기능 구현하기 글 제목으로 접근하여 해당 게시물의 상세정보를 보여주기 위해 BbsDAO클래스에 하나의 게시물의 정보를 가져오는 기능을 구현합니다. public Bbs getBbs(int bbsID) { // 해당 게시물 정보룰 가져오는 기능 String SQL = "SELECT * FROM BBS WHERE bbsID = ?"; // 해당 번호애 게시물 정보를 선택 try { PreparedStatement pstmt = conn.prepareStatement(SQL); pstmt.setInt(1, bbsID); rs = pstmt.executeQuery(); if (rs.next()) { Bbs bbs = new Bbs(); bbs.setBbsID(rs.getInt(1)); bbs.setBbsTitle(rs.getS.. 더보기