반응형 코딩공부63 [JAVA]내부클래스 내부클래스: 클래스 내부에 선언한 클래스로 클래스 내부에서만 사용할 목적으로 만드는 클래스이다. //문법 class Out{ //외부클래스 class In{ //내부클래스 } } 내부클래스의 종류 [변수 측면에서] class ABC{ int n1;//인스턴스 변수 static int n2; //정적변수 public void abc(){ int n3; //지역변수 } } [클래스 측면에서] class ABC{//외부클래스 class In{//인스턴스 내부클래스 - static이 붙지않음 static class SIn{//정적 내부 클래스 - static이 붙음 } } public void abc(){//메소드 안에도 클래스가 들어갈 수 있다. class Local{//지역 내부 클래스 } } } //최상위.. 2020. 7. 1. [JAVA]StringBuffer VS StirngBuilder 프로그램을 만들다 보면 문자열을 변경하거나 연결해야 할 때가 많다. 그런데 String클래스는 한번 생성되면 그 내부의 문자열이 변경되지 않기 때문에, String 클래스를 사용하여 문자열을 계속 연결하거나 변경하는 프로그램을 작성하면 메모리 낭비가 많다. 이 문제를 해결하는 것이 바로 StringBuffer와 StringBuilder 클래스이다. StringBuffer와 StringBuilder는 내부에 변경 가능한(final이 아닌) char[] 변수로 가지고 있다. 이 두 클래스를 이용하여 문자열을 연결하면 기존에 사용하던 char[] 배열이 확장되므로 추가 메모리를 사용하지 않는다. 따라서 문자열을 연결하거나 변경할 경우 두 클래스 중 하나를 사용하면 된다. 두 클래스의 차이는 여러작업(스레드)이.. 2020. 7. 1. [JAVA]String 클래스 String 클래스 자바는 문자열을 사용할 수 있도록 Stirng 클래스를 제공한다. Stirng을 사용할 때 문자열을 생성자의 매개변수로 하여 생성하는 방식과 이미 생성된 문자열 상수를 가리키는 방식이 있다. [예시] Stirng str1 = new String("abc"); Stirng str2 = "def"; 2020. 7. 1. [JAVA]Object 클래스 Object 클래스: 모든 클래스의 최상위 클래스 Java.lang.Object 클래스 모든 클래스는 Object 클래스에서 상속 받는다. 모든 클래스는 Object 클래스의 메서드를 사용할 수 있다. 모든 클래스는 Object 클래스의 메서드 중 일부는 재정의 할 수 있다.(단, final로 선언된 메서드는 재정의 할 수 없다.) 컴파일러가 extends Object를 직접 추가한다. Object 클래스 메서드 String toString(): 객체를 문자열로 표현하여 반환, 재정의하여 객체에 대한 설명이나 특정 멤버 변수값을 반환한다. boolean equals(Object obj): 두 인스턴스가 동일할 지 여부를 반환, 재정의하여 논리적으로 동일한 인스턴스임을 정의할 수 있다. int hasCod.. 2020. 7. 1. [JAVA] 인터페이스 상속 [인터페이스 상속하기] [인터페이스 X 정의] public interface X { //추상 메서드 선언 void x(); } [인터페이스 Y 정의] public interface Y { //추상메서드 선언 void y(); } [인터페이스 Myinterface 정의] //X,Y 인터페이스 상속 public interface Myinterface extends X, Y { //추상 메서드 선언 void myMethod(); } [클래스 MyClass 정의] //Myinterface 인터페이스를 구현 public class MyClass implements Myinterface{ @Override public void x() { // TODO Auto-generated method stub System.o.. 2020. 6. 29. [JAVA]인터페이스와 다형성 인터페이스는 "Client Code"와 서비스를 제공하는 "객체" 사이의 약속이다. 어떤 객체가 어떤 interface 타입이라고 하는 것은 그 interface가 제공하는 메서드를 구현했다는 의미를 가진다. Cilent는 어떻게 구현되었는지 상관없이 interface의 정의만을 보고 사용할 수 있다. [예시] JDBC(Java DataBase Connectivity) - 자바에서 데이터베이스에 접근할 수 있도록 하는 자바 API이다. 다양한 구현이 필요한 인터페이스를 설계하는 일은 매우 중요하다. 인터페이스의 사용법 UserInfoWeb은 IUserInfoDao에 정의된 메서드 명세만 보고 Dao를 사용할 수 있고 Dao 클래스들은 IUserInfoDao에 정의된 메서드를 구현할 책임이 있다. 실습 -.. 2020. 6. 29. 이전 1 2 3 4 5 6 ··· 11 다음 반응형