본문 바로가기

Programming Language/JAVA

(35)
[JAVA] 상속( inheritance ) ● 상속 (inheritance) : 자식 클래스가 부모클래스를 물려받아 확장하는 의미로써, 상속을 이용하면 중복이 제거되고 간결한 구조를 가질수있습니다. ● 상속을 통해서 할 수 있는 일 - 기존의 클래스에 다른 기능을 추가할 수 있다. - 클래스의 데이터에 다른 것을 추가할 수 있다. - 클래스의 함수가 동작하는 방식을 변경할 수 있다. - 위의 작업들은 코드를 복사하여 진행할 수도 있지만, 상속을 통해서 간결하게 처리할 수 있다. - Extends를 사용하여 상속을 받는다. ● 상속 선언 - extends 키워드로 선언한다. - 부모 클래스는 슈퍼 클래스(super class)라고도 불린다. - 자식 클래스는 서브 클래스(sub class)라고도 불린다. class SuperClass { publi..
[JAVA] 생성자(Constructor) ● 생성자 : 객체가 만들어질때 멤버변수의 초기화를 위하여 호출되는 함수이다. ※ 특징 - 클래스의 이름과 동일한 이름의 메소드로 구성한다. - 함수의 반환값(return value)이 없다. - 일반적으로 객체를 초기화하는 목적으로 사용된다. ※ 사용 예시 class 클래스 이름 { 클래스 이름 () { 생성자 함수의 내용; } } public class Test { public Test() { System.out.println("생성자 호출"); } public static void main(String[] args) { Test con = new Test(); } } 리턴값 없이 public 접근제한자를 적어주고, 클래스명과 동일하게 적어줘서 생성자를 선언해줍니다. 그안에 메시지 출력으로 "생성자 ..
[JAVA] package ( 패키지 ) 개념과 생성방법 ● Package란? : 자바 클래스들을 여러 이름공간으로 정리한 것이며, 동일한 패키지 내의 클래스들은 서로의 멤버들에 접근할 수 있습니다. 예 ) 아마도 폴더를 이용해서 파일들을 정리해보셨을겁니다. 이런 파일들을 뒤죽박죽 섞여있을때 성격에 맞게 분류한다음 새폴더에 저장시키는 방식입니다. 자바의 패키지(package)도 이런방식과 동일한 개념으로, 비슷한 성격의 자바클래스들을 모아 넣는 자바의 디렉토리입니다. 우선, 패키지를 만들어주기위해 이클립스에서 src디렉토리에 마우스 우클릭을 해줍니다. New -> Package 를 클릭해줍니다. 위와같은 창이뜨면 package명을 입력해줘야하는데 저는 testPackage라고 입력하고 Finish를 눌러줍니다. 다음으로, testPackage2를 처음과 동일한..
[JAVA] Sleep클래스 , Process클래스 ● Sleep 클래스 public class Test05_Sleep { public static void main(String[] args) { for(int i=0;i
[JAVA] Time(현재 시간 얻기), Date ● Time 클래스 public class Test01 { public static void main(String[] args) { long time = System.currentTimeMillis(); //현재의 시간을 초단위로 얻어와줌 System.out.println(time); } } 먼저, Time클래스를 알아보겠습니다. currentTimeMillis메소드(현재 시간을 초단위로 얻어오는 기능)를 long데이터타입의 time변수에 받아옵니다. time변수를 그대로 출력해줍니다. import java.text.SimpleDateFormat; public class Test02 { public static void main(String[] args) { long time = System.curren..
[JAVA] This포인터와 정보은닉 & 캡슐화 ● This - 자기 자신의 정보를 가지고 있다. - 멤버함수에서 멤버변수에 접근하기 위하여 사용된다. - 객체의 0번째 매개변수라고도 칭한다. class This_01{ public int a = 10; public void func() { int a = 2; System.out.println("func() a :" +this.a + "\t"+a); } public void funcOne() { System.out.println("funcOne() a: " +a); } } public class Test01 { public static void main(String[] args) { This_01 T = new This_01(); T.func(); T.funcOne(); System.out.printl..
[JAVA] 변수종류 ( 지역변수, 전역변수, 클래스변수, 인스턴스변수 ) [JAVA] 변수종류 ( 지역변수, 전역변수, 클래스변수, 인스턴스변수 ) public class Test { public static void main(String[] args) { int i = 0; while(i
[JAVA] 랜덤, 난수 (random) ● 난수(Random Number) - 임의의 값 또는 무작위로 만들어지는 알 수 없는 값 ● 난수생성의 활용 - 주사위 게임, 포커 게임 및 슈팅게임등등 ● 난수 생성 Method - Math 클래스 내부의 random() method - 0~1.0사이의 값을 무작위로 Retrun - 원하는 난수 범위를 구하기 위해 적절한 연산과 형 변환이 필요 - Math.random()*(최대~최소 +1) +최소 public class Test { public static void main(String[] args){ for(int i=0;i