N스크린하이브리드앱과정/JAVA
-
[2주][3일][5~7교시] JAVA: static의 활용. 실습N스크린하이브리드앱과정/JAVA 2013. 7. 24. 15:55
*static 실습(1) 접근지정자 중 static에 대해 알아보자. StaticTest 클래스에서 변수 a를 static으로 지정한 경우, 메인 메서드에서 객체생성없이 출력이 가능하다. system.out.println(StaticTest.a); 이런 식으로 말이다. *static 실습(2) 문제 결과 정답 메인 메서드에서, 1번째 값은 객체를 생성해 실행되었고, 2번째 값은 count는 객체, total은 static으로 클래스에서 바로 호출하였다. 마지막 3번째 값은 static으로 지정된 show()메서드를 호출하였다. s(ㅇ_ㅇ)/......오늘도 벌써 다 끝나간다....꺄호
-
[2주][3일][5~7교시] JAVA: 레퍼런스 형변환. 업캐스팅과 다운캐스팅N스크린하이브리드앱과정/JAVA 2013. 7. 24. 15:12
*레퍼런스 형변환 - 업캐스팅 실습(1) Shape(부모클래스)와 Cir,Rec,Tri(자식클래스) 메인 메서드 본래는 이런 식으로 객체를 여러개 생성하지만, 업캐스팅 사용: 부모=자식 부모=자식 으로 업캐스팅한 참조변수 s는 같은 메서드로 출력이 가능해 편리하다. 참조변수가 그때그때 다른 자식클래스로 대체가 된다는 것인데, 이렇게 객체의 재사용이 가능하다! Shape s = null; 의 뜻은 참조변수(객체) s를 초기화시킨다는 의미이다. 즉, 자료형에서 int n=0; 으로 지정해주는 것과 같은 개념이라고 생각하면 된다. 결과 *업캐스팅 실습(2) - 문제 : 다음과 같은 클래스와 메서드를 만들고, 객체를 생성하여 아래와 같은 결과가 나오도록 출력하라. 결과 정답 - 클래스 생성 메인 메서드 *형변환..
-
[2주][3일][3~4교시] JAVA: 메서드 오버라이딩, 생성자 오버라이딩N스크린하이브리드앱과정/JAVA 2013. 7. 24. 14:20
*메서드 오버라이딩 1. 동물 울음소리 실습 전체 소스 문제 동물 클래스 Cat 클래스(Animal 상속) Dog 클래스(Animal 상속) 메인메서드 결과 2. 잔고 출력하기 기존의 account2 클래스는 잔고 부족일때 잔고를 출력하지 않았다. 그걸 잔고가 출력되게 바꿔줄거다. 문제 Account2 클래스 BusanBank 클래스 메인 메서드 *생성자 오버라이딩 - 객체(참조변수)의 재사용! 1. 차 마음대로 바꾸기 {Car3 클래스} {메인 메서드} 객체의 재사용 c2객체를 2번 재사용 하였다. 첫번째에는 색깔만 "Red"로 바꿨고, 두번째에는 색깔과 타입을 바꾸었다. 생성자 오버라이딩을 통해 가능해진 것이다. 결과 또 아래 그림의 내용을 더 추가해 보았다. 위 그림처럼 설정하여도 객체의 재사용이 ..
-
[2주][2일][8교시] JAVA 연습문제(for문)(1)N스크린하이브리드앱과정/JAVA 2013. 7. 23. 19:15
[2] 1부터 20까지의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하시오. 정답 결과 [3] 1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+3+...+10)의 결과를 계산하시오. 정답 결과 [4] 1+(-2)+3+(-4)+... 과 같은 식으로 계속 더해나갔을 때, 몇까지 더해야 총합이 100이상이 되는지 구하시오. 정답(1) - for문 정답(2) - while문 결과 [5] 다음의 for문을 while문으로 변경하시오. --> 피라미드 출력 문제 정답 결과 [6] 두 개의 주사위를 던졌을 때, 눈의 합이 6이 되는 모든 경우의 수를 출력하는 프로그램을 작성하시오. --> 주사위 두 눈의 합이 6이 되는 경우의 수는 총 5가지이다. (1,5),(2,4),(3,3),(4,2),(5,..
-
[2주][2일] 메서드 오버라이딩N스크린하이브리드앱과정/JAVA 2013. 7. 23. 16:53
*메서드 오버라이딩 하는법 1. 상속받을 서브클래스에서 단축키 alt+shift+s+v를 누른다. 2. 부모클래스 Parent에 체크하고, Insertion point 옵션에서 "First member"를 선택한 후 확인을 누른다. *메서드 오버라이딩 실습(1) 다음과 같은 지시에 따라 코딩을 완성해 보자. 지시에 맞게 부모클래스와 자식클래스를 만들어준다. b는 부모클래스의 객체이고 c는 자식클래스의 객체이다. b.parentPrn()을 호출하면 부모클래스의 출력문이 출력될 것이고 c.childPrn()을 호출하면 자식클래스의 출력문이 실행될 것이다. 마지막으로 c.parentPrn()메서드는 자식클래스에서 메서드 오버라이딩을 한 것이므로, 자식클래스에서 오버라이딩한 출력문이 실행된다. *메서드 오버라이..
-
[2주][2일] JAVA: 상속 - 미완료N스크린하이브리드앱과정/JAVA 2013. 7. 23. 14:11
*상속의 특징 1. 기존 클래스에 멤버변수나 메소드를 추가하여 새로운 클래스를 만드는 것이다(변경된 내용들만 추가). 2. [형식]class서브클래스 extends슈퍼클래스 a.슈퍼클래스 = super class = 상위클래스 = 부모클래스 = parent class b.서브클래스 = sub class = 하위클래스 = 자식클래스 3. 개발기간이나 노력을 단축할 수 있다(코드의 재사용성이 높아짐). 4. 상속받은 클래스도 다시 상속 가능하다. 5. 모든 클래스는 Object클래스를 기본으로 상속받는다. 6. 상속은 is-a관계: 하위클래스는 상위클래스이다(sub class is a super class) *상속 실습(1) - 할아버지와 아버지 1. "GrandFather"라는 할아버지 클래스를 만든다. ..
-
[2주][1일차] JAVA: 생성자 오버로딩 - 미완료N스크린하이브리드앱과정/JAVA 2013. 7. 22. 19:21
*생성자 오버로딩(1) 개념 : 클래스를 생성하고 main메서드에서 객체(인스턴스)를 생성하는 과정에서 자동으로 생성자가 생긴다. 이 생성자는 평소에는 숨어서 기본값으로 작동하나, 클래스 안에서 생성자를 명시적으로 지정해줄 수 있다. 뿐만 아니라, 생성자도 오버로딩을 통해 메서드와 비슷한 기능을 하게 만들 수 있다. 그림을 보면서 자세히 알아보자. 위 그림과 같이 MyDate()가 기본생성자이다. 본래 공백으로 해도 되지만, 여기서는 (년도,월,일)의 초기값을 지정해주었다. 두번째 메서드부터 생성자 오버로딩을 사용했다. this.year(멤버변수) = year(변수); // 오른쪽 변수값, 즉 매개변수의 지정에 따라, 그 값은 멤버변수값에 대입되어 출력될 것이다. print()메서드에서 리턴값을 돌려주지..
-
[2주][1일차] 캡슐화와 데이터 은닉. 다형성과 메서드 오버로딩N스크린하이브리드앱과정/JAVA 2013. 7. 22. 18:06
**캡슐화와 데이터 은닉** 앞에서 "접근 지정자" 4가지를 배웠다. 이 접근 지정자를 통해 접근할 수 있는 범위를 지정할 수 있게되고, 이것을 다른 말로 캡슐화라고 한다. *단축키 Alt + shift + s -> generate getters and setters... get과 set을 자동으로 설정해줌. * Animal클래스 숨기기 실습 - 동물 클래스 Animal 클래스에서 본래는 private가 없었다. 그래서 데이터 은닉을 위해 아래 그림과 같이 private로 지정을 해주었다. 저번주 실습때는 get과 set을 일일이 손으로 쳐줘야 했다. 그러나 이제 자동으로 지정해 줄수가 있다. 단축키 Alt + shift + s -> generate getters and setters... 를 클릭하면,..