전체 글 72

[JAVA] 자바 Swing JTable, DefaultTableModel

JTable 생성 public class JTableTest extends JFrame{ JTable table; JScrollPane sc; public JTableTest() { //테이블 데이터 //Object배열은 모든 데이터를 넣을 수 있음 Object[] columnTitle = {"이름","나이","직업"}; Object[][] rowNames = { // 0열 1열 2열 {"홍길동",13,"학생"}, {"길라임",15,"학생"}, {"김주원",17,"학생"} }; //초기화, 설정 table = new JTable(rowNames,columnTitle) sc = new JScrollPane(table); add(sc); setBounds(400,300,300,300); setVisible(..

Web develop/JAVA 2019.04.30

[JAVA] 자바 GUI Event 처리 방법

EVENT 처리 Event: 컴포넌트에서 사건이 발생했을 때 기능을 부여하는 것. SQL에서는 'trigger'라고 불림 사건: 버튼눌림, 마우스움직임, 체크하기, 텍스트쓰기 등 기능: 실행문장들 기술 Button을 클릭했을 때, Scrollbar 조절바를 움직였을 때, TextField에 글자를 썼을 때, Frame 우측상단의 X버튼을 클릭했을 때 등등 Event 처리방법 기능 부여할 컴포넌트 선정 (어떤 컴포넌트를 이벤트소스로 사용 할 지) class My { Frame f Button bt_hello, bt_exit; Checkbox cb_apple; List list; } // 이벤트소스 후보자(사건유발자): f, bt_hello, bt_exit, cb_apple, list // bt_hello,..

Web develop/JAVA 2019.04.30

[JAVA] 자바 GUI

TUI (Text User Interface) 프로그램 실행을 Text에 의존해서 실행 ex) 메뉴에서 1을 누르면 추가, 2를 누르면 검색, 3을 누르면 종료. AWT (Abstract Window Toolkit) GUI(Graphic User Interface)환경을 구축하기위한 class들의 묶음 java.awt.*; Component : Menu, Button, Label, Choice, Checkbox, List TextField, TextArea, Scrollbar... Container : Component의 객체를 생성한 후에 그 객체를 배치한다. Object | Component | Container | ------------------------ | | Panel Window | | A..

Web develop/JAVA 2019.04.29

[JAVA] 자바 내부클래스(Inner Class/비 정적 중첩클래스)

: 클래스 내에 또 다른 클래스를 구성하는 것 [public/final/abstract] class A { //외부클래스, Outer클래스, Top-level 클래스 static int su = 100; //1차자원 정의 [접근제한자4개, static가능] class B {// 내부클래스, Inner클래스 //2차 자원정의 System.out.println(su); //외부클래스 su에 static 선언 후 사용 } } 클래스 접근제한자로 public, default, final, abstract만 가능하지만 중첩클래스는 멤버이기에 접근제한자 네개와 static까지 모두 사용할 수 있음. 내부클래스는 외부클래스에서 static이 붙은 자원을 모두 자기것으로 사용함. 외부클래스가 내부클래스 안에있는 기능을..

Web develop/JAVA 2019.04.29

[JAVA] 자바 예외처리(Exception) 예제

: 프로그램 실행 중에 발생하는 예기치 않은 사건 처리. 자바는 프로그램 실행 중 발생할 수 있는 예외를 처리할 수 있는 기법을 제공한다. 발생하는 모든 예외를 객체로 취급하고 예외관련 클래스를 제공한다. 에러발생 예제 정수를 0으로 나누는 경우 배열의 첨자가 음수값을 가지는 경우 배열 첨자가 배열의 크기를 벗어나는 경우 부적절한 형변환이 일어나는 경우 입출력시 interupt가 발생하는 경우 입출력하기 위해 지정한 파일이 존재하지 않거나 파일 이름이 틀린 경우 int su = 3.14; //에러 --> int자료형에서는 0.14에 대한 표현을 할 수 없다. int su = (int)3.14; //su변수에 3이 저장 double d = 30; //묵시적인 형변환. d변수에 30.0이 저장 double ..

Web develop/JAVA 2019.04.26

[JAVA] 자바 String 클래스 종류 및 사용법

String Convert String 클래스 : 고정(길이)문자열 String s1 = "우리나라"; String s2 = "대한민국만세"; s1 = s1 + s2; // "우리나라대한민국만세" String 클래스 객체 생성 문자열 변환을 위해서 임시로 StringBuffer 클래스 객체생성 append() 메소드를 호출 StringBuffer 객체를 String 객체로 변환 임시로 생성된 StringBuffer 객체를 소멸(연결하기에 비효율적임) StringBuffer 클래스 : 가변(길이) 문자열 StringBuffer s1 = new StringBuffer("우리나라"); s1.append("대한민국만세"); public static void main(String[] args) { StringCo..

Web develop/JAVA 2019.04.25

[JAVA] 자바 클래스 객체생성법

: 멤버(field,method)들에 대한 메모리 할당 동적메모리 할당 사용안하는 객체에 대해서 가비지컬렉터가 자동 소멸 관리 키워드 : new 사용법 : 참조변수를 통해 사용 A a = new A(); a.hello(); 정적메모리 할당 자주 사용되는 필드,메소드에 대해 정의 객체들간의 통신에 사용 (공유 데이터를 표현) 키워드 : static 사용법: 클래스명으로 참조 클래스명.필드명 클래스명.메소드명(); //클래스변수,클래스메소드 //static변수, static메소드 class B{ public static int su=100; public static void goodBye(){} } 클래스 객체 비교 클래스참조변수1 == 클래스참조변수2 //메모리 주소 비교!! A a1 = new A(); ..

Web develop/JAVA 2019.04.24

[JAVA] 추상클래스(abstract class)

자식 class를 제어할 목적으로 사용 자식클래스의 특징을 모아놓은 클래스 구현(정의)된 메소드와 선언된 메소드로 구성 스스로 객체생성 불가→ 후손 class 객체생성해서 사용 class 기본클래스 { //정의(구현)된 메소드 void hello(){ } } class 추상클래스 { //선언된 메소드 void hello(); //정의메소드 void goodBye(){ } } interface 인터페이스 { //선언된 메소드만 void hello(); } 추상클래스 형식 abstract class 클래스명{ //필드선언 public void hello(){}; //구현된(정의된) 메소드 abstract void print(); //선언된 메소드 ※주의: 선언된 메소드를 사용하는 경우 반드시 abstract..

Web develop/JAVA 2019.04.24

[JAVA] 자바 배열(Array)

: 데이터형이 동일한 자료에 같은(하나의) 변수명을 정의한 자료들의 집합 데이터형이 동일한 자료 같은(하나의) 변수명을 정의 su[0] , su[1] , ... -> 번지(인덱스). 데이터를 구분하기 위해서 사용함 ==> su라는 배열변수에 복수 데이터를 대입 시작번지는 0번지 첫번째 데이터부터 인덱스(자동번호) 배열의 크기가 정해지면 인덱스를 벗어나는 참조를 하면 안됨 배열 => 객체취급 자료형 앞에 대괄호가 들어가는 순간 참조변수가 된다. int su; //한개의 데이터 입력 int[] su; //여러개의 데이터 입력(배열) int[] su3 = {10,11,12}; System.out.println(su3[1]); //데이터 사용 System.out.println(su3[5]); //에러발생. 범위..

Web develop/JAVA 2019.04.24

[JAVA] 자바빈즈(JavaBeans)

: 서로 관련성 있는 속성을 묶어주는 클래스(객체) 사용하는 곳에 따라 VO 또는 DTO 라는 이름을 사용하기도 함 VO : Value Object(데이터들을 묶어주는 객체) DTO : Data Transfer Object (데이터를 전송해주는 객체) 자바빈즈 규칙 속성데이터를 private하게 선언 public 선언된 주고받는 메소드를 정의 public한 기본생성자, 오버로딩 생성자를 정의할 수 있다 반드시 속성의 수와 일치하는 get, set이 정의되지 않아도 된다. public class Person{ private String name; private int age; private String job; public void setName(String name) { this.name = name; ..

Web develop/JAVA 2019.04.24