프로그래밍 언어/JAVA 10

자바 인터페이스(interface)

안녕하세요. 오늘은 자바 인터페이스에 대해 알아보겠습니다.인터페이스를 사용하는 이유는 공동작업을 하기 위해서입니다.예를들어 LED모듈을 아트메가나 아두이노에서 동작하게 하려면 코드가 다릅니다. 그래서 LED모듈 인터페이스를 만들어 놓고 각각 코드를 구현하면 됩니다. 인터페이스 사용 인터페이스의 기본적인 형식은 클래스와 같은데, 함수에는 몸체가 없습니다. 또한 인터페이스를 상속할때는 implements를 사용합니다. 1234interface Led { public void led_ON(); public void led_OFF();}cs Led 인터페이스를 만들었습니다. 이때 함수들을 추상메소드라고 합니다. 123456789101112131415161718192021222324252627class atmeg..

자바 String클래스 알아보기

안녕하세요. 오늘은 String클래스를 사용해 보겠습니다. String클래스는 문자열을 다룰 때 주로 사용합니다. 문자열을 String클래스로 사용 할 때 두가지 방법이 있는데요, 첫번째는 문자열의 주소를 저장하는방법과 두번째는 String객체를 만들어서 객체에 문자열을 넣고 객체의 주소를 저장하는 방법이 있습니다. 첫번째 방법 : String st_address = "AAA";두번째 방법 : String st_object = new String("AAA"); st1과 st2와 st3는 같은 주소의 "AAA"를 가리키게 됩니다. 그러나 아래에 객체를 만든 "AAA"는 서로 다른 주소를 가리키게 됩니다. 이 두가지 방법은 문자열을 비교할 때 차이가 납니다.문자열을 비교할 때 ==연산자 와 equals함수를..

자바 상속이란?

안녕하세요. 오늘은 자바 상속에 대해 알아보겠습니다.상속이란 기존의 클래스에 새로운 것들을 정의하여 클래스를 정의하는 것 입니다. 상속 기본개념자식클래스에서는 부모클래스의 변수와 메소드를 사용 할 수 있게 됩니다.class 자식클래스 extends 부모클래스 이런식으로 선언하게 됩니다.(자식클래스 = 하위클래스 = 서브클래스 , 부모클래스 = 상위클래스=수퍼클래스) 123456789101112131415161718public class child extends parent{ void seeInfor(){ System.out.println("home price : " + homePrice); System.out.println("home size : " + homeSize); seeDish(); }} cla..

자바 메소드 오버라이딩이란(Method Overriding)

안녕하세요. 오늘은 메소드 오버라이딩에 대해 알아보겠습니다.메소드 오버라이딩이란 상위클래스에서 정의된 함수를 하위클래스에서 다시 정의하면서 상위클래스의 함수를 무효화 시키는 것을 의미합니다. 1234567891011121314151617181920212223242526public class main { public static void main(String[] args) { good g1 = new good(); notgood g2 = new notgood(); good g3 = new notgood(); g1.see(); g2.see(); g3.see(); } } class good { void see() { System.out.println("good"); }} class notgood extends..

자바 메소드 오버로딩이란(Method Overloading)

자바 메소드오버로딩이란(Method Overloading) 메소드오버로딩은 매우 좋은 기능입니다. 사용하면 편리합니다. 사용자의 이름을 저장하는 함수를 아래처럼 정의 할 수 있습니다.123void inforName(String name){ myName = name;}cs 사용자의 이름과 나이를 저장하는 함수를 아래처럼 정의 할 수 있습니다.1234void inforNameAge(String name,String age){ myName = name; myAge = age;}Colored by Color Scriptercs 이 두 함수들을 이름을 동일하게 하여 사용 할 수 있습니다.12345678void infor(String name){ myName = name;} void infor(String name..

자바 인스턴스 변수 vs 클래스 변수

자바 인스턴스 변수 vs 클래스 변수 인스턴스 변수란 인스턴스가 생성되었을때 그 안에 있는 변슁고 클래스 변수란 인스턴스 변수와 상관없이 그냥 존재하는 변수입니다. 인스턴스 변수 : 클래스 내에 선언된 일반적인 변수 입니다. 클래스 변수(static 변수)static으로 변수를 선언하면 어디서든 그 변수는 똑같습니다. JVM에 클래스가 읽히는 순간부터 클래스 변수가 메모리에 저장됩니다. mon.java1234567891011public class mon { static public void main(String args[]) { staticClass.n++; System.out.println("n의 값 : " + staticClass.n); staticClass.n++; System.out.println..

자바 private,public,default,protected접근자 차이

자바 public,protected,private,default접근자의 차이에대해 알아보겠습니다.처음부터 public의 접근권한은 어떻고.. 이론적으로 먼저 배우는 것보다 실제로 자기가 해보는 것이 기억에 잘 남는것 같아서 먼저 접근자로 실험을 해보고 마지막에 표로 정리하겠습니다. 클래스 정의할 때 사용하는 접근자 : public, default public : 다른 패키지에서도 객체 생성 가능default : 동일 패키지 내에서만 객체 생성 가능 Money.java123456789package won; public class Money { public static void main(String[] args) { new on.sw(); //오류 } }Colored by Color Scriptercs처음 ..

자바 클래스와 인스턴스

안녕하세요. 오늘은 자바의 클래스와 인스턴스에 대해 알아보겠습니다.클래스(Class) = 데이터(Data) + 메소드(Method) 인스턴스(객체) = 클래스에서 만들어진 것비유해서 말하자면 클래스란 붕어빵 틀이고 인스턴스(객체)란 붕어빵입니다.붕어빵 틀이 있어서 붕어빵 만들기가 매우 쉽습니다. 그냥 틀에 반죽 넣고 팥넣고 다시 넣으면 완성됩니다.그러나 붕어빵 틀이 없다면 붕어빵 만들기가 매우 힘들겠죠..이처럼 클래스와 인스턴스가 그런 사이입니다. 클래스란 처음 자바프로젝트를 만들면 아래와 같은 코드가 생성되는데요.main클래스와 main함수가 생성됩니다.이 처럼 클래스는 데이터와 메소드의 모임입니다. 123456public class main { public static void main(String[..

네이버 API사용법 (java,안드로이드스튜디오)

안녕하세요. 오늘은 네이버 검색 API를 사용해 보겠습니다. JAVA를 이용해서 해 볼거구요, JAVA를 사용하므로 안드로이드스튜디오에서도 그대로 적용됩니다.( 여기서는 네이버API를 사용하지만 공공데이터API,기상청API등 사용방법은 똑같습니다) https://developers.naver.com/docs/search/blog/ 일단 네이버API를 사용하려면 키값을 받아야되는데 위의 사이트로가서 API신청버튼을 누르면 바로 신청이 됩니다. -출력 포맷 XML"one JSONgroup: {name : "one"} 이런식으로 데이터들이 나와서 자기가 원하는 형식을 선택하면 됩니다. -요청변수API를 요청할 때 나오게 할 정보의 규칙입니다. -출력결과 요청한 정보들에 대한 정보입니다. 실제로 검색API 블로..

자바 HashMap 사용법입니다.

HashMap 이라는 클래스는 자료를 저장하는 배열느낌이 나는 친구이다.키값을 가지고 정해놓은 데이터를 호출하는 것인데 예를들어 1번:철수 2번:영희 3번:짱구 라고 한다면1번이라고 부르면 철수라는 데이터가 나온다. 즉 1번 이라는것은 키 값이고 철수라는것은 데이터이다.HashMap클래스의 put함수로 키값과 데이터를 넣고 get으로 호출하면 된다. - 실제 코딩한 모습 - - 결과 값 - HashMap이라고 하였는데 String대신 클래스도 들어갈수있고 Integer같은것도 들어갈 수 있다. 즉 제네릭 선언이다.여기에서는 키값과 데이터값을 String형으로 사용하겠다는 의미다 여기서 사용한 put,get메소드 외에도 자주사용하는 함수로 remove(Object key) ,isEmpty(), clear(..