Develop 70

0530 JAVA 열번째!!

상속받는 자식 클래스의 메서드의 접근 범위는 부모의 접근 범위와 같거나 크게 설정할 수 있다. (작게는 안된다.) InstanceInner 어떠한 클래스를 한 클래스에서만 사용하게 된다면 클래스 안에 클래스를 정의함으로써 내부클래스 형태로 만들어준다. 외부에는 불필요한 클래스를 감춤으로 코드의 복잡성을 줄일 수 있다.(다른 클래스에서 사용할 수 없다.) local class 지역 클래스 외부 클래스의 메서드나 초기화블럭 안에 선언한다. 익명 클래스 1회용 클래스 new Inner1() { void display(){ System.out.println("x:"+x*x*x); }//display }.display(); 객체를 생성함과 동시에 정의되어있는 메서드를 재정의하고 호출까지 동시에 한다. 인터페이스도..

Develop/JAVA 2022.06.01

0527 JAVA 아홉번째

추상메서드 abstract void draw( ); { } 일부러 중괄호를 통해 정의를 하지않고 마치기 위해서는 미완성이라는 의미로 메서드 앞에 abstract 를 붙여준다. 클래스 또한 abstract class로 만들 수 있다. 미완성 메서드를 가지고 있는 추상 클래스로는 객체를 만들수 없다. 자식클래스가 추상클래스를 상속받기 위해선 두가지 방법이 있는데 첫번째는 추상 클래스를 상속받는 자식 클래스도 추상 클래스로 만들어줘야한다. 그런데 상속받은 자식 클래스로도 객체를 만들 수 없게 된다. 이를 해결하기 위해서는 자식 클래스에서 부모의 미완성 메서드를 정의해주면 된다. 미완성 메서드를 정의해준다면 자식클래스는 완성됐기 때문에 abstract를 지워준다. 굳이굳이 왜 추상클래스를 만들고 미완성 메서드를..

Develop/JAVA 2022.06.01

0526 JAVA 여덟번째

상속 class Parent{ int x=10; void method() { System.out.println("P_x:"+x); } } class Child extends Parent{ int x=20; // 만일 이 변수가 없다면 void method() { int x=30; //지역변수 System.out.println("x:"+x); System.out.println("this.x:"+this.x); System.out.println("super.x:"+super.x); } } 우선 순위는 지역변수 인스턴스변수 상속된변수 순으로 되어있다. 위의 Child 클래스의 인스턴스 변수가 없다면 this.x는 부모클래스인 Parent클래스에서의 인스턴스 변수를 호출한다. 지역변수가 없다면 클래스 안의 인스..

Develop/JAVA 2022.06.01

0525 JAVA 일곱번째

상속 어떠한 클래스를 새로이 만드는데 이전 클래스의 멤버변수에 무언가 추가되었다면 상속을 통해 코드를 효율적으로 만들수 있다. class 클래스명 extends 이전클래스 위와 같은 형태로 만든다. 새로이 만드는 클래스를 자식(하위)클래스 계승하는 이전 클래스를 부모(상위,조상)클래스라 한다. 자식 클래스의 생성자에서도 부모클래스의 멤버변수를 사용할 수 있다. 자식클래스는 부모클래스의 생성자를 제외한 다른 메서드까지 상속 받는다. 부모클래스는 자식클래스의 메서드를 가져다 쓸 수 없다. 만약 자식클래스에서 부모클래스와 같은 메서드명 (기능은 다르다.)을 사용한다면 메서드 오버라이딩(overriding)이라고 한다. 부모클래스의 동명메서드를 메서드 선언부라 한다. 오버로딩(overloading)과 비슷하여 ..

Develop/JAVA 2022.06.01

0524 JAVA 여섯번째

한 클래스파일 안에는 같은 메서드가 중복 될 수 없다. 메서드 Overloading public static void main(String[] args) { int i =plus(3,5,10); float j = plus(0.1f,0.2f); double k =plus(1.1,2.2); System.out.println("int합:"+i); System.out.println("float합:"+j); System.out.println("double합:"+k); } static int plus(int x,int y, int z) { return x+y+z; } static float plus(float x,float y) { return x+y; } static double plus(double x,doub..

Develop/JAVA 2022.06.01

0523 JAVA 다섯번째

메서드 메서드란 특정한 작업을 수행하도록 독립적으로 작성된 프로그램을 뜻한다. 메서드 정의 부분이 필요할 때 마다 호출해서 사용할 수 있다. 메서드 정의 부분 처리가 끝나면 호출한 곳으로 돌아간다. 메서드 정의하는법 static void 메서드명( ){ } 이러한 형태를 갖는다. 정의를 한 뒤 호출 할 때는 메인 메서드 내부에 메서드명( ); 으로 불러올 수 있다. 항상 메인 메서드가 먼저 실행된다. 메서드명( )의 가로 안에 값을 넣으면 그 값을 들고 메서드로 와서 실행한다. 메서드에는 그 값을 받기위한 변수 설정이 필요하다. (매개변수 or parameter) 클래스를 배울때 배웠던 멤버변수, instance 변수나 static변수,클래스변수와 같다. add(100,200); //호출 100,200:..

Develop/JAVA 2022.06.01

0520 JAVA 네번째 공부!

글 작성시 코드 블럭을 사용하는 법을 알아냈습니다! 1차원과 2차원 배열의 차이 1차원은 하나의 배열로 끝나고 2차원은 2줄이상의 배열로 작성한다. int[ ][ ] arr = { ↓열 {80,72,63,83}, {92,21}, ←행 {99,49,59} }; 각각의 배열의 관리자 또한 배열로 만든다. 여기서 arr.length는 3개의 배열로 이루어지므로 3 arr[0].length는 배열안에 4개의 값이므로 4다. 배열의 값을 찾는 법은 우선 몇번째 배열(행)인지를 넣고 그 배열의 순서대로 위치(열)을 입력하면 된다. 예 arr[0][0] 이중 반복문을 통해 2차원배열을 나열할 수 있다. for(i=0;i2 3 8 5 2 9 0>3 3 8 5 2 9 0>4 2 8 5 3 9 1>2. 2>3. . 3>4..

Develop/JAVA 2022.06.01

0518 JAVA 두번째

2일차! 초반엔 정신이 없어서 한번에 업로드하게 됐네요... 앞으론 꾸준히 올려보도록 노력하겠습니다! 연산자 산술 연산자 + 더하기 - 빼기 * 곱하기 / 나누기 % 나머지 복합대입연산자 a를 10이라 가정했을때 a = a+3; 13이 도출된다. a += 3; 으로 줄여쓸 수 있다. -= 은 빼기 *= 는 곱하기 /= 는 나누기 %=는 나누고 난 후의 나머지다. 증감연산자 a를 5라 가정하고 aa를 가정하지 않았을때 aa = a; 는 5가 도출 ++은 1만 더한다는 증강연산자. aa = ++a; 는 a=6 aa=6 풀어쓰면 a=a+1; aa=a; aa = a++; 은 a=6 aa=5 가 된다. 풀어쓰면 aa=a; a=a+1; ++이 앞에 있을땐 먼저 뒤에 있을땐 나중에 더한다. --는 1만 빼는 감소연산..

Develop/JAVA 2022.05.27

0517 JAVA START!

안녕하세요! 국비지원 학원에서 자바 응용 SW 개발자 과정을 듣게 됐습니다! 하루하루 공부한 것들을 정리하려고 블로그도 만들었네요. 잘부탁드립니다! 자바를 사용하며 알아둬야 할 것들 ; = 세미콜론 : = 콜론 역슬래쉬+t = 탭 역슬래쉬+n =엔터 역슬래쉬+" = " "를 정상적으로 출력하기 위함. /* abc */ = 처음과 끝에 입력시 해당 구간 전체 주석처리. " " = 문자열 ' ' :=문자, 문자상수 파일명 변경법 파일이름 우클릭-Refactor-Rename에서 이름 변경 파일이름 클릭-F2키로 이름변경 복붙 동시 : ctrl + alt + ↓ 줄 삭제 : ctrl + d 실행 : ctrl + F11 cmd로 실행하기 C:\Users\admin>cd C:\Java_jjh\01_자료형과 기본입출..

Develop/JAVA 2022.05.27