전체 글

기록하는 습관을 기르자
반응형
Backend/JAVA

[kh정보교육원 17일차] 상속(inheritance) / 오버라이드(Override) / is-a 상속관계 / has-a 포함관계

금요일엔 정말 중요한걸 배웠다. 바로 상속. Inheritance. 상속에 대해서 알아보자. ​ 상속 (Inheritance) class 자식클래스이름 extends 부모클래스이름 { // 내용 } 위와 같이 사용한다. @Override 어노테이션 - 오버라이딩 유효성 확인 extends 가 뒤에 없을 경우 - extends Object 생략된 것. extends 뒤에는 딱 한개의 클래스만 올 수 있음. ​ 다음과 같이 상속을 extend로 선언하여 사용하면, 부모클래스에 선언된 필드/메소드를 선언없이 사용할 수 있다. @Override 어노테이션은 오버라이드가 됐는지 확인할 수 있는 코드로, 상속받은 메소드를 오버라이드했을 경우 오류가 발생하지 않고, 오버라이드 메소드가 아닐 경우 오류가 발생한다. @..

Backend/JAVA

[kh정보교육원 16일차] VO class 구현하기 / 객체관리 / has-a 포함관계 / 연관관계

지난 수업에서 VO class 를 배웠다. 오늘은 이를 응용하고 더 확장해보는 수업이었다. ​ VO class - 다른말로는 DTO (Data Transfer Object) , DO(Domain Object), Entity, bean 이라고도 한다. vo class 작성방법 1. private field 2. public getter/setter (위치 생성자 아래도 가능) 3. 기본 / 모든 파라미터 생성자 4. 필드정보 확인용 메소드 보통 getter/setter를 제외하고는 순서도 이 순서대로 쓴다. ​ ​ 다음과 같은 구조에서, 먼저 Person.java 클래스를 작성해본다. public class Person { //field private String name; private int age; ..

Backend/JAVA

[kh정보교육원 15일차] static , non-static 메소드 / 오버로딩 / Call by Value / Call by Reference / 재귀메소드 / 생성자

Static / non-static 메소드 ​ 1. nonstatic 메소드 (멤버 / 인스턴스 메소드) - 객체를 생성 후 호출해야 한다. - 멤버변수 , 클래스변수 모두 접근할 수 있다. ​ 2. static 메소드 (클래스 메소드 ) - 객체 생성 없이, 클래스명으로 직접 호출하는 메소드 - 클래스 변수에만 접근할 수 있다. int a=100; static int s=99; public static void main(String[] args) { MethodStudy study = new MethodStudy(); study.test1(); MethodStudy.test2(); } /** * 멤버메소드 */ public void test1() { System.out.println(a); System..

Backend/JAVA

[kh정보교육원 14일차] UML 다이어그램 / 멤버변수와 클래스 변수 / 지역변수와 전역변수

13일차 수업에 이어서 UML 다이어그램을 진행한다. 이를 보고 클래스 작성하기를 과제로 주셨다. ​ Member class package net.kh.member.model; public class Member { private String memberId; private String memberPwd; private String memberName; private int age; private char gender; private String phone; private String email; public Member() { } //getter + setter public String getMemberId() { return memberId; } public void setMemberId(String..

Backend/JAVA

[kh정보교육원 13일차] 클래스와 객체 / 캡슐화 / 추상화 / 클래스의 접근제한자 / starUML / UML 다이어그램

드디어 객체 에 들어왔다. 객체와 관련된 수업은 굉장히 중요하나, 사실 14일에 열심히 듣지 않은 관계로 지금 이렇게 쓰고 있다 ​ ​ 객체지향 객체지향 프로그래밍이란, 현실세계의 객체(사물, 개념)을 클래스(class)와 객체(object)의 개념으로 컴퓨터에서 구현하는 것을 의미한다. 객체간의 상호작용을 프로그래밍으로 만든 것이 객체지향 언어라고 보면 된다. ​ 객체지향의 3대 원칙 캡슐화 상속 다형성 ​ ​ 객체 클래스대로 new 연산자를 호출해서 메모리 heap에 적재된 결과물(instance)을 객체라고 한다. ​ 클래스 객체를 정의한 것. 객체의 설계도와 틀. 사물이나 개념의 공통요소를 용도의 맞게 추상화(abstraction)한 것. 코딩에서 추상화는 클래스를 작성하는 것이라고 볼 수 있다...

Backend/JAVA

[kh정보교육원 11,12일차] 프로그래밍 언어 활용 과정을 마치며 (java.lang패키지 / 클래스명과 패키지명 / static method 호출 / 기본형과 참조형 변수 )

10,11일에는 배운것도 있지만 주로 시험이 주가 되었다. ​ 그래서 기본 개념중 시험을 통해 알게 된 몰랐던 개념을 정리하려고 한다. ​ ​ java.lang.* ; java.lang 패키지 자바 프로그램의 기본적인 클래스를 담고 있는 패키지로 import 구문 없이 사용할 수 있는 것이 특징. 포함 선언을 하지 않아도 자바 가상머신에 의해 자동 포함처리된다. ex) Number/Character/Boolean/String ..... 등의 Objects ​ ​ 패키지명과 클래스명 패키지는 클래스의 묶음을 의미하고, 서로 관련있는 클래스들끼리 그룹으로 묶어서 효율적으로 관리. 클래스의 실제 이름은 패키지명을 포함한 것이다. 같은 이름의 클래스라도 다른 패키지에 각각 존재할 수 있다. ​ Static me..

Backend/JAVA

[kh정보교육원 10일차] 중첩반복문 / 2차원배열

중첩반복문 행 : 바깥 반복문 열 : 안쪽 반복문 ​ for (int i=0;i

Backend/JAVA

[kh정보교육원 9일차] for each( 향상된 for 문) / 배열, 배열의 초기화 / 얕은 복사와 깊은 복사 / split / substring

For each (향상된 for문) ​ 형태 for (요소를 담은 변수 : 배열(반복접근 가능한 객체)) { //반복문의 내용 } ​ 특히 배열에서 잘 사용한다. 배열을 공부하고 다시 언급해보겠다. ​ 배열 - 동일 자료형의 묶음 - 메모리도 연결된 부분을 사용 ** 길이가 n일때 마지막 인덱스는 n-1이다. (인덱스가 0부터 시작하기 때문) ​ 배열은 다음과 같이 사용된다. 선언 → 할당 → 값대입 → 사용 int[] arr; int arr[]; 둘다 가능하나 java에서는 위에것을 더 많이 사용한다. ​ 배열의 할당은 배열 객체를 생성 후 변수에 주소값을 할당하는 것을 의미한다. 변수이름 = new 자료형 [저장 데이터 수]; ex) arr=new int[5]; 위와 같은 규칙을 지닌다. ​ 배열 초..

Backend/JAVA

[kh정보교육원 8일차] While문 / Do While문 / Break & Continue 문

* 03/04 수강한 내용인데 이제야 작성한다. ​ While문 ​ 초기식 while(조건식) { ​ //반복실행구문 증감식 } ​ 위와 같은 형태를 지니고, 조건식이 참일때까지만 { }괄호 안을 반복한다. ​ * 1부터 사용자 입력 정수까지의 3의 배수의 합 구하기 Scanner sc = new Scanner(System.in); System.out.print("정수 입력 : "); int n = sc.nextInt(); int i = 1; int sum = 0; while(i 9) { System.out.println("잘못 입력하셨습니다. "); return; } int i = 1; while(i

반응형
유경(shin-6-0)
유경쓰 개발일기