본문 바로가기

반응형

아옳옳의 코딩공부

(96)
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..
2021-02-23 자바공부 (상속3 이해 , 상속의 사용목적) 이렇게 어려운 상속의 이야기들을 코드를 보면서 이해를 쉽게 해보자~ 만들려구 하는프로그램은 일단 타이어라는 클래스르 만들고 최대사용 가능량과 누적 사용량을 계산하여 누적사용량이 최대사용량을 넘어가면 자동차가 멈추고 타이어를 교체해주는 프로그램을 작성하였다 코드속에도 주석으로 설명이 써져 있으니 참고하자~ 부모클래스 package methodoverride; //부모 클래스 Tire public class Tire { // 타이어의 기본 속성 등을 담아서 자식클래스에 넘겨 준다 // 타이어의 최대 사용가능횟수 int maxRotation; // 타이어의 누적 사용량 // 타이어의 최대 사용가능횟수와 비교하여 타이어 사용횟수가 넘으면 교체를 해준다는걸 보여줄예정 int accumulationRotate = ..
2021-02-20 자바공부 (시스템 입출력 ,배열 , 열거타입) 사실 전에 배운 내용이지만 블로그 시작하면서 전에 배운 내용이 생략되어있다 ㅜ ㅜ 현재 배우는 내용을 실시간으로 작성하기 때문에 날짜가 맞지만 전에 배운 내용들은 시간나는대로 올릴거기 때문에 좀 복잡하더라도 알아서 찾아보도록!! ㅋㅋ 시스템 입출력장치 (System.out.pirtln & System.out.pirt & System.out.pirtf) 출력 예전에 해본것이라 크게 문제될 것은 없다 System.out.print & System.out.println 자주 사용하던 출력 방식 System.out.printf 는 주로 c언어에서 사용하던 방식이나 자바에서도 지원해준다 이 클래스는 object를 상속받아져 있다. 자식에게 toString이 있는지 먼저 찾고 그것을 실행해준다 그래서 주소값이 아닌..
2021-02-19 자바공부 (상속2 오버라이딩 ,instanceof) 상속을 위한 기본 조건 is - A 관계 성립 has - A 관계도 상속으로 표현 가능, 하지만 Composition(복합관계) 위지하는것이 적절 ! 무슨 말인가 싶은데 비유를 들자면 전화기를 상속 받아 스마트폰이 나온것이 is - A 관계 이다 . 즉 스마트폰은 (일종의)전화기이다!!! 만약 반대로 하게 된면? 전화기는 (일종의) 스마트폰이다. 이건 말이 될까? 잘 생각해보자 모든 전화기가 스마트폰일수는 없다 전화기의 모든 종류가 스마트폰은 아니기 때문에 이러한 관계를 제대로 표현한게 is- A 관계라고 보면 된다 has-A 관계는 건물에 출입하는 출입증 생각을 하면된다 A라는 건물에 출입할려면 건물에 들어오면서 출입증을 찍고 들어올수 있는데 출입증은 건물에 다니는 회사원들에게만 주어진다 이런형식이 h..
2021-02-19 자바공부 (상속1 , 라이브러리 ) 상속의 기본 클래스의 메소드나 속성을 다른 클래스에게 전달해주는것 상위클래스(부모) : 자원을 물려주는 클래스 하위클래스(자식) : 자원을 물려받는 클래스 동일한 변수와 메소드를 계속해서 만들어내지 않고 하나의 클래스를 만들어서 사용하면 보다 간편하게 사용하기 위하여 상속을 사용한다 상속하는법 [제어자] class [클래스이름] extends [부모클래스이름] 상속은 소스를 재활용하기 위하여 사용된다! 재활용 하므로 편의성과 생산성 증가 ! 페트병 재활용하면 다음에 똑같은 페트병을 또 안만들어도 된다 ! *자식클래스가 인스턴스를 하게 되면 부모와 자식 둘다 생성자가 실행된다 *인스턴스가 생성될때 실행 순서는 부모가 먼저 실행 되고 자식실행 ( 자식클래스 생성자에 super() 가 자동으로 만들어지면서 부..
2021-02-18 자바공부 ( ArrayList ,싱글톤) 리스트 어제 ,엊그제 배운 배열은 데이터의 크기가 커지거나 배열 중간에 데이터를 넣어야 할때는 수동으로 작업을 해줘야 하는 불편함이 있는데 , 즉 데이터의 성격이 유동적일땐 사용하기 좋지 않다 그래서 그 불편함을 줄이기 위하여 리스트를 사용한다 리스트 사용방법 * 리스트도 클래스 이다 * 리스트는 배열과 다르게 자동적으로 늘어난다 * 꺽세 안쪽엔 내가 사용할 데이터형을 넣어준다 (클래스형을 준다 : int : Integer 등등) 어레이리스트도 new 해서 인스턴스 해주기 때문에 안쪽에 사용할 수있는 메소드가 있다 add() : 값을 추가합니다. get() : 값을 가져옵니다. size() : 크기 값을 알 수 있습니다. &안드로이드 실습& 이름과 나이를 입력 받아 어레이 리스트로 저장출력 하는 프로그램..

반응형