OBject 클래스 clone() --> 클래스를 복제하는 메서드 protected Object clone() throws CloneNotSupportedException --> protected 이므로 상속관계이거나 자기클래스에서 호출가능. --> CloneNotSupportedException을 발생시키는데 이 익셉션은 Cloneable interface을 implements해야됨. --> 반환형이 Object이므로 사용할때 형변환 해줘야됨. equals() --> ==는 주소비교,Object의 equals도 주소비교(다른equals는 객체비교) 따라서 객체비교를 하고싶다면 equals를 오버라이딩해서 형변환해준다. public boolean equals(Object obj) finalize() --..
# String public char charAt(int index) String a="abcdef"; 012345 a.charAt(2) -->2번인덱스 숫자줘라 public String concat(String str) String a="abc"; String b=a.concat("def"); -->abcdef concat--> 더해라 (String b=a+("def");) 같음 public boolean endsWith(String suffix) String a="abc"; boolean b=a.endsWith("bc") -->ture endsWith --> 이거로끝나냐? public boolean equals(Object anObject) equals --> 문자열비교(String에서 =..
java.util.Colletion -인터페이스 : 제너릭타입 안에는 참조형 타입만 들어갈 수 있다.(ex int 안됨 Integer 됨) 객체생성하면 다른 안의 값도 객체생성할때 정한 타입으로 바뀜. ------------------------------------------------ ****Set**** java.util.Set // extends Colletion -컬렉션에 상속된 인터페이스 java.util.HashSet // implement Set - set을 상속한 클래스 Set(주머니) - 순서 x ,중복데이터 x --> Set은 인터페이스이기 때문에 객체생성이 안됨.그래서 여러종류의 상속받은 구현클래스를 이용 그 중에 자주쓰는게 HashSet HashSet --> add메서드 ex) i..
JAVA 에서 데이터베이스 연결 1. 드라이버 클래스 등록 ex) Class.forName ("oracle.jdbc.driver.OracleDriver"); forname 메서드=클래스를 메모리에 로드시키는 역할(즉 OracleDriver클래스를 메모리에등록) throws ClassNotFoundException 를 가지고있어서 처리해줘야됨. 오라클 클래스니까 classpath 해줘야됨 (set classpath=.;주소) 2. 연결 개체 만들기 ex) Connection conn = DriverManager.getConnection ("url","아이디","비밀번호"); DriverManager 클래스의 getConnection () 메소드는 데이터베이스와의 연결을 설정하는 데 ..
Exception - CheckedException(Exception) - UnCheckedException(RuntimeException) #CheckedException 1.예외(Exception)가 발생한 메소드 내에서 직접 처리 (try-catch-finally) try{ 예외 발생 가능성이 있는 문장들; } catch(예외타입 매개변수명){ 예외타입의 예외가 발생할 경우 처리 문장들; } finally{ 항상 수행할 필요가 있는 문장들; } try -예외가 발생할 가능성이 있는 범위를 지정 catch -예외가 발생하면 try 블록의 나머지 문장들은 수행되지 않고, JVM이 예외발생시키며 발생한 예외 객체 타입이 동일한 catch 블록을 수행한다. finally -예외 발생..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 import java.awt.*; import java.awt.event.*; class HwFrame extends Frame{ static TextField tf1,tf2,tf3; static Label L1,L2; HwFrame(){ tf1=new TextField(""); L1=new Label("+"); tf2=new TextField(..
# 내부클래스 1 내부멤버클래스 2 내부로컬클래스 3 내부무명클래스 # 내부멤버클래스 [ex] 클래스주소.멤버변수 클래스주소.메서드() 클래스주소.new 내부멤버클래스() 내부클래스는 외부클래스의 모든 멤버변수와 메서드에 주소생성없이 접근할 수 있다. # 내부로컬클래스 내부로컬클래스에서는 로컬변수를 접근할 수 없다. 만약 로컬변수에 접근하고 싶다면 final선언해야한다. # 내부무명클래스 [sy] new 상위클래스명(){}; 객체를 전달하는 곳에 위치한다. 클래스선언과 객체생성이 한곳에 묶여져 있다. 객체를 한번만 생성 할 수 있다. ex) 객체가 들어올 수 있는 위치 세곳(//here) class A{} class B{ void a(A o){} A b(){ return //here } void c(){..
# 자바의 진수표현 0b숫자 --> 2진수 0숫자 --> 8진수 0x숫자 --> 16진수 [ex] class A{ public static void main(String args[]){ int a=0b10; // 2^1*1 + 2^0*0 int b=010; // 8^1*1 + 8^0*0 int c=0x10; // 16^1*1 + 16^0*0 System.out.println(a); System.out.println(b); System.out.println(c); } } [ex] int a=0x41; --> a : 65 유니코드표 16진수로 표현되어져 있음 char a='\u0041'; System.out.println(a); // A
# 상수 : 모든객체가 공유해야(static)하고 한번결정된 값은 마지막(finial)이어야하는 것 상수는 보통 변수명을 대문자로 선언하자는 관례적인 규칙이 있다. [ex] class A{ static final int B=100; static int c=200; } class B{ public static void main(String args[]){ System.out.println(A.B); System.out.println(A.c); } } # 인터페이스 -인터페이스 안에는 상수와 추상메서드만 쓸 수 있다. [sy] interface 인터페이스{ 상수 추상메서드 } ex) interface A{ int a=100; // public static final int a=100; --> public ..
자료형변환 -다형적변수로 자식의 메서드중에서 오버라이딩되지 않는 메서드를 호출할때 형변환을 해야한다. class A{ void a(){System.out.println(1);} } class B{ public static void main(String args[]){ Object o=new A(); //o.a(); // here } } [an1] A o2=(A)o; o2.a(); [an2] ((A)o).a(); # ClassCastException : 클래스변환에러 [ex] class Animal{} class Dog extends Animal{} class Cat extends Animal{} class A{ public static void main(String args[]){ Animal..