본문 바로가기

반응형

아옳옳의 코딩공부/아옳옳 자바코딩공부

(29)
2021-04-08 자바공부 (StringTokenizer클래스 , Arrays 클래스 ) StringTokenizer 구분자로해서 부분 문자열 분리 시킨다. 실습 코드 Arrays 클래스 배열 복사 메소드 메소드 호출 예시 배열의 내용 비교 오름차순 정렬 ( 내림차순은 안된다 ) 하지만 숫자라면 명확하지만 예를 들어 사람을 정렬 한다고 생각하면 키 큰순서 or 몸무게 순서 등과 같이 기준이 모호 하다 그래서 그 기준을 주는것이 아래이다. 위에서는 정석으로 사용하는 방법이였다면 아래 코드에서는 간략화해서 사용하였다 . 잘 참고 하자 아래 코드를 보면 이해가 쉬울것이다. ///////////////펄슨 public class Person implements Comparable { private String name; private int age; public Person(String name, ..
2021-04-07 자바공부 (Wrapper 클래스 , BigInteger클래스 , math 클래스 , ) 기본자료형을 객체자료형으로 변경하여 사용하거나 객체자료형을 기본자료형으로 변경할때 사용한다 위 그림을 보면 ShowData를 호출하면서 기본자료형인 int 를 넘겨주고 있다. 하지만 ShowData는 객체자료형을 받는 Object형으로 되어 있어서 사용을 못하는게 정상이다. 하지만 이것을 가능하게 해주는것이 바로 Wrapper 클래스 이다 . Integer in = new Integer(7); ShowData(in); ShowData(new Integer(3)); 이렇게 사용해주면된다 . 이렇게 사용을 하는것인데 이렇게 Warpper인스턴스로 감싸는것을 Boxing , Warpper인스턴스에서 저장된 데이터를 꺼내는것을 UnBoxing이라함 하지만 이렇게 하면 귀찮고 번거롭기 때문에 자바에서는 자동으로 ..
2021-04-05 자바공부 (Object 클래스 ) 모든 클래스들의 최상위 클래스 자바의 모든 클래스들은 내가 모르는 사이에 Object 클래스를 상속받고 있다 !! 트리 구조 , 계층 구조 : 하나의 뿌리에서 여러개의 가지를 치는 형상 Object 클래스 위와처럼 많은 메소드들을 담고 있는데 아까말했다 시피 모든 클래스는 Object 클래스를 상속 받기 때문에 다른 클래스에서도 사용할 수 있는것이다. 자주 사용하는 것 몇가지 먼저 해보도록 하자 toString 메소드 , getClass메소드 package clone; public class GetClass_toString { int x,y; public GetClass_toString(int x, int y) { this.x = x; this.y = y; } @Override public String ..
2021-04-05 자바공부 (예외처리) 나이를 입력하라고 했는데, 0보다 작은 값을 입력 나눗셈을 위한 두 개의 정수를 입력받는데, 제수로 0을 입력 주민번호 13자리를 입력하라고 했는데 중간에 - 를 포함 14자리를 입력 등의 예외 상황이 발생했을때 지금까지는 if문으로 처리를 했지만 if문을 사용해 예외상황을 처리시 프로그램의 흐름인지 예외의 처리인지 구분이 힘들어 try ~ catch문을 사용한다 try ~ catch문 try 영역은 예외상황이 발생될거 같은 영역 catch 영역은 예외상황 처리하는 영역이다 . finally 끝나도 무조건 실행되는 부분이다. 간단한 코드를 보면서 이해를 해보자 간단하게 5개 짜리 배열을 만들어 출력하는 상황이다. for문 안쪽을 보면 배열이 5개라 인덱스로는 0~4까지 이다 . 근데 for문은 5번 반복..
2021-02-28 자바공부 (String 클래스) 예전에 배운 스트링 클래스에대해서 다시 복습겸 정리하는 시간이다~ ! String은 무조건 새롭게 만들어지는 것이다!! 이름이 다른 변수에 같은 글씨를 담게 되면 실제로 다른 변수처럼 그 내용물이 담기는게 아닌 그 글씨의 주소값을 바라보는 것 단 String str1 = new String(my String) ; 이렇게 하게 되면 새로운 인스턴스를 생성하여 주소가 다르게 저장된다 그래서 위처럼 비교를 하게되면 서로 다른 주소값을 가지고 있는것을 확인 할수 있다 . String을 사용한 기본 문자열 연산익히기 concat(String str) : 대상문자열 뒤에 매개변수 붙여 반환 abc.concat(“def”) => 결과 “abcdef” substring(int beginindex) :대상 문자열 매개변..
2021-02-26 자바공부 (interface, Inner클래스[내부클래스]) 빈 인터페이스 (구분자) 디폴트메소드와 static 메소드 package default_method; public class DefaultMethod_Ex { public static void main(String[] args) { //인터페이스에서도 디폴트 메소드를 통해서 간접접근하여 사용할수 있다 MyInterface m1 = new ClassA(); //클래스A에서 정의한 메소드 m1.method1(); //메소드2는 인터페이스에서 만들어 놓은 디폴트 메소드 m1.method2(); //인터페이스에서도 디폴트 메소드를 통해서 간접접근하여 사용할수 있다 MyInterface m2 = new ClassB(); //클래스B에서 정의한 메소드 m2.method1(); //클래스B의 메소드2는 오버라이딩 m..
2021-02-25 자바공부 (abstract 클래스 , interface) abstract 클래스 앱스트렉은 부모클래스를 인스턴스생성을 막고 단순 오버라이딩 목적으로 사용할때 사용한다. *참조변수는 선언가능 하다 예) Friend f = new univFriend(); *상속받은 자식클래스는 반드시 오버라이딩메소드를 가지고 있어야 한다 *인스턴스 생성 불가능 예)Friend f = new Friend(); 이렇게 사용안된다 인터페이스 상속의 개념과 비슷한거 같지만 실제로 구현개념 !!! 메소드의 원형만사용하여 실제 메소드의 기능을 따로 만들어서 구현해주는 개념이라고 생각하면 된다 . 간단하게 메소드의 설계 도면이라고 생각하면 된다 큰 프로젝트를 할때 미리 만들어놓은 설계도면을 가지고 그 기능들은 각자가 알아서 작업하므로 작업 효율이 좋아진다! 예를 들면 사람을 만든다 생각해보자..
2021-02-24 자바공부 (상속4 상속을 사용한 안드로이드 작업) 오늘은 어제배운 상속을 다시한번 복습을 하기위한 공부를 했다~ 안드로이드 스튜디오를 활용하여 간단한 프로그램을 만들었다 일단보이는것처럼 클래스를 만들어 주었다 . (코드공부이기때문에 xml 코드는 생략할예정 ) 각 코드에 주석을 보고 이해 하면 된다 메인엑티비티 클래스 package com.example.javachap14; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widg..

반응형