프로그래밍 기초 및 응용 21

보충 - 상속

과연 어떤 자식이 부모의 클래스를 상속할 것인가,,!! Java - Inheritance 사이트 참조 : https://www.tutorialspoint.com/java/java_inheritance.htm 사실 상속은 스프링에서 많이 안씁니다. 그래도 알아야 합니다. 왜요? 기존에 있던 라이브러리에서 상속을 쓰니까요. package day0519; class AAA{ public AAA() { System.out.println("AAA생성자입니다."); } } class BBB extends AAA{ public BBB() { System.out.println("BBB생성자입니다."); } } public class InheritanceTest01 { public static void main(Stri..

보충 - 2차 배열

오늘은 난이도를 올린 2차배열을 해보겠습니다. 2차원 배열의 length는 모두 행값이 나옵니다. [행][열] 여기서 랭쓰는? 무조건 행 값입니다. package day0516; import java.util.Scanner; public class ArrayTest { public static void main(String[] args) { int n=5; Scanner in=new Scanner(System.in); System.out.println("수입력[2~9] : "); n=in.nextInt(); int[][] arr=new int[n][n+10]; System.out.println(arr.length); } } 저기에 n+10이 있어도? 5개다. 그런데? System.out.println(a..

보충 - 버블 정렬

[버블 정렬] 알고리즘의 가장 기본적인 알고리즘이 바로 버블 정렬 알고리즘이라고 할 수 있겠습니다. 로또 번호와 비슷한 방법으로 원리를 이해해보도록 하겠습니다. package day0513; import java.lang.reflect.Array; import java.util.Arrays; public class ArrayTest01 { public static void main(String[] args) { // 인덱스 번호 0 1 2 3 4 5 int[] arr= {36,11,22,8,17,20}; //버블정렬 for(int i=0 ; iarr[i+1]) { //위치 교환 : 임시공간에 만들어놓고 잠깐 교환. int temp=arr[i]; arr[i]=arr[i+1]; arr[i+1]=temp; }..

보충 - 배열 / 이차항 배열

package day0510; public class ArrayTest01 { public static void main(String[] args) { int[] arr=new int[10]; //arr : 배열변수이름 : 배열변수 : 배열 //배열은 변수를 자동으로 만들어줘요 //배열[인덱스번호] : 인덱스0~ } } int[] arr=new int[10]; //arr : 배열변수이름 : 배열변수 : 배열 //배열은 변수를 자동으로 만들어줘요 //배열[인덱스번호] : 인덱스0~ length-1 System.out.println(arr.length); arr[0]=1; arr[1]=2; arr[2]=3; arr[3]=4; arr[4]=5; arr[5]=6; arr[6]=7; arr[7]=8; arr[8]..

보충 - 배열

데이터 설정하구요 게터세터 해줍니다. 그리고 데이터니까 왠만하면 보안을 위해서 private 해주자고요! 생성자도 모두 하세요 package day0503; import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ArrayTest02 { public static void main(String[] args) { Exam[] ex=new Exam[3]; ex[0]=new Exam("test1", 10, 10, 10); ex[1]=new Exam("test2", 20, 20, 20); ex[2]=new Exam("test3", 30, 30, 30); //ex[3]=new Exam("test4", 30, 30..

캡슐화

데이터와 데이터를 처리하는 함수를 하나로 묶어 놓은것. 정보 은닉이 필요한 중요한 데이터와 기능을 묶어 놓은것. 불완전하게 캡슐화 하거나 잘못 사용함으로써 발생할 수 있는 문제를 예방하기 위한 보안 점검 항목들임. 접근 제어자 (예약어) : 외부로부터의 접근을 제한하기 위해 사용되는 예약어 public, protected, default, private 순으로 점점 더 제한한다. 클래스 내부, 패키지 내부, 하위 클래스, 패키지 외부! private는 클래스 내부만 접근 가능하게 함. private 는 외부에서 직접 값을 가져올 수 없기 때문에 특별한 메소드인 getter와 setter 메소드를 통하여 가져 올 수 있음. [getter 메소드] - 게터는 private 필드를 반환(return)한다. -..

메소드

반복문, 조건문, 변수, 상수와 같은 것들은 프로그램을 만드는 가장 중요한 도구들! -> 아주 작은 프로그램을 만들때 사용합니다. public static void main(String [] args) { } 객 체 지향 |--메소드 영역 ----------| - 정의 : 위에서 만든 메소드를 통하여 호출로 출력될 수 있습니다. 이미 정해놓은 것을 재활용 할 수 있음. 코드를 많이 안 써도 되고, 유지와 보수에 유리합니다. 핵심은 재활용! - main 메소드 : 자바와 개발자인 나 사이의 약속! 이거는 자바가 이렇게 해달라고 했으니까 꼭 지켜주기! 왜? 라는건 없어. 그것이 약속이니까. -만약 메소드가 없다면? 쉬운것도 돌아감. 책 보면서 더 추가해 놓겠습니다.

정리 시험 문제

파이널은 수정불가 스태이틱은 공유 스레드 무슨 메서드? thread 에 sleep 1. 2022.3.28 기준 최신java 버전을 설치하세요. 오라클 사이트로 들어갑니다. 제품- 자바- 자바 다운로드 윈도우에서 인스톨러로! 최신버전 자바 설치 완료! 2. 1번에서 설치한 java가 실행되도록 버전을 확인하세요. 화면 캡쳐후 제출 하세요. -> cmd 창을 확인! 3. 1번에서 설치한 java의 컴파일 버전을 확인하세요. 화면 캡쳐 후 제출 하세요. 이것도 cmd창 확인하삼. java -version javac -version 4. java 버전을 11버전으로 변경처리하고 확인하세요. 화면캡쳐 후 제출하세요. -> 환경변수 11버전을 깔아야지! 자바 홈에서

상속/다형성/추상화 개념

1. 상속 : 이미 잘 개발된 클래스를 재사용하여 새로운 클래스를 만들기 때문에 중복되는 코드를 줄여줌. (경제성) 2. 클래스 대 클래스 1) 키워드 extends 자식 클래스를 선언할 때 어떤 부모 클래스를 상속받을 것이닞 결정하고, 선택된 부모 클래스는 extends 뒤에 기술. ex) class 자식 extends 부모 2) 단일상속만 가능 여러개의 부모 클래스를 상속할 수 없음. 따라서 extends 뒤에는 단 하나!의 부모 클래스만이 와야함. 2. 다형성 : 사용 방법은 동일하지만 다양한 객체를 이용해서 다양한 실행결과가 나오도록 하는 성질. 3. 추상화 : 실체에서 공통되는 특성을 추출한 것. - 추상메서드 : 메서드의 선언만 통일하고 실행 내용이 실체 클래스마다 달라야하는 경우에 추상 메서..