전체 글

전체 글

    [Java] 08_상속(Inheritance, 오버라이딩)

    08_상속(Inheritance) 매 클래스마다 중복된 코드들을 일일이 기술하면 수정과 같은 유지보수 시 매번 일일이 찾아서 수정해야 한다는 번거로움이 생김 => "상속"이라는 개념을 적용시켜서 매 클래스마다 중복된 필드, 중복된 메소드들을 단 한 번 또 하나의 클래스로 정의해 둔 후 해당 클래스를 가져다 쓰는 방식으로 진행 *상속 다른 클래스가 가지고 있는 필드, 메소드들을 새로 작성할 클래스에서 직접 만들지 않고 이미 만들어진 클래스에서 "상속" 받음으로서 자신의 필드, 자신의 메소드처럼 사용 가능한 개념 => 즉, 코드를 물려받겠다 * 코드를 물려받는 측 -------> 코드를 물려주는 측 자식 부모 후손 조상 하위 상위 // 부모 클래스: 세 클래스 모두 공통적으로 기술했던 요소들만 추출해서 단 ..

    [Java] 06_객체(생성자, 메소드, 오버로딩), 07_객체 배열(oneVsmany)

    *생성자 메소드명이 클래스명과 동일하고 리턴 자료형이 없는 public 메소드 객체가 생성될 때 (new문을 쓸 때) 호출되는 메소드 [ 표현법 ] public 클래스명(매개변수 => 생략 가능) { 객체를 생성할 때 내가 실행하고자 하는 코드; (내가 원하는 값으로 필드를 초기화하는 코드를 주로 씀) } 생성자를 작성하는 목적 1. 객체를 생성해 주기 위한 목적(new문을 쓸때 함께 쓰임) // Product p1 = new Product(); 구문에서 new 뒤의 Product()생성자임! 2. 객체 생성뿐 아니라 매개변수로 전달한 값을 곧바로 필드에 초기화할 목적 *생성자 작성 시 주의사항 1. 반드시 클래스명과 이름이 동일해야 함 (대소문자 구분) 2. 반환형이 존재하지 않음 (메소드와 유사하게 ..

    [이클립스-github] github-이클립스 pull 후 import 안 됨

    [error 내용] github에서 git 폴더로 pull은 성공! 하지만 import가 안 되는 현상 발생 깃허브에서 깃 로컬 폴더로 pull은 성공했으나 (폴더로 직접 접근 시 pull 한 프로젝트가 잘 들어온 것을 확인함) 이클립스에서 import-General-Existing Projects into Workspace로 깃 최상위 폴더 선택 시 pull 해 온 새로운 폴더들이 보이지 않음 Refresh도 해 보고 이것저것 만져 봤지만 뜨지 않음 깃 폴더에 자료는 있지만 이클립스가 인식하지 못하는 상태 왜지? 왜일까 답답해진 나는 천재 개발자에게 질문 공세 퍼부음 더보기 응 안 돼 [error 해결 방법] 깃허브에 .project를 commit & push 하지 않아 이클립스가 해당 파일을 Java..

    [Java] 06_객체(캡슐화, 클래스 실습, 필드, 접근 제한자)

    06_객체(캡슐화) *setter 메소드 Student 클래스 package com.kh.chap02.encapsulation.model.vo; // 캡슐화 과정을 거친 Student 클래스 public class Student { // 필드부 /* * 필드: 클래스 안에 바로 선언해 두는 변수 * (== 멤버변수 == 인스턴스 변수) * * [ 표현법 ] * 접근제한자 자료형 필드명; */ private String name; private int age; private double height; // 생성자부 // 메소드부 /* * 각 기능(기능 단위 == 메소드)을 구현하는 부분 * * [ 표현법 ] * 접근제한자 반환형 메소드명(매개변수 => 생략 가능하나 적을 때는 짝 맞춰서 값 잘 넣어 줘야 ..

    [Java] 06_객체(개념과 추상화, 대입)

    06_객체 chap01. 객체지향언어 객체: 클래스에 정의된 대로 new 연산자를 통해 메모리 영역에 생성된 것 => 참조 자료형 변수 객체는 변수다! 로 생각하면 편함 \명심해야 할 것: 객체를 어렵게 생각하지 말자! 단지 참조형 "변수"일 뿐이다! 명심해야 할 것: 객체를 어렵게 생각하지 말자! 단지 참조형 "변수"일 뿐이다! 1. 객체지향언어: "객체"를 "지향(추구)"하는 언어로 "객체중심"으로 돌아간다. 2. 객체란?: 사전적 의미로는 현실세계에 독립적으로 존재하는 (목적이 있고 의미가 있는) 모든 것들을 의미(무형, 유형, 사물, 개념, ...) 3. 객체지향 프로그래밍: 현실세계의 독립적인 존재들(객체)간의 상호작용(행위) => 현실세계의 것들을 프로그래밍을 통해 가상세계(코드)로 구현하는 ..

    [이클립스 error] The project was not build path is incomplete. Cannot find the class file for java.lnag.Object. Fix the build path thn try building this project.

    [error 내용] pull 해 온 프로젝트에 빨간 엑스 표시가 뜸 The project was not build path is incomplete. Cannot find the class file for java.lnag.Object. Fix the build path thn try building this project. 오늘도 학원에서 pull 하고 어려운 실습 문제 때문에 흠흠거리던 중 시뻘건 Problems 탭을 목격 이상해 보이는 클래스들을 열어 보니 거기도 빨간 엑스 이클립스야 또 시작이니 내가 .classpath ignore 했다고 너 또 나한테 이러는 거니... [error 해결 방법] class 파일의 경로(path)가 지정되지 않아 발생한 오류이므로 경로를 다시 지정해 주면 됨! 경로..

    [이클립스-github] github에 잘못 올라간 .classpath, .project, .gitignore 삭제하는 법

    [error 내용] .gitignore 설정하지 않고 commit -> push 한 전적이 있어 불필요한 파일들이 모두 push된 상태!. 처음 깃허브를 사용할 때 사용자마다 이클립스의 설정이 다르고, 해당 설정이 다르면 충돌 때문에 에러 난다는 사실을 몰랐음 당연히 .gitignore이 뭔지도 몰랐음... 추후에 .gitignore 파일의 존재 이유를 알게 됐고 이클립스 설정 등이 담긴 .classpath, .project, .gitignore, .settings/, bin/ 등을 기록했으나 이미 커밋 앤 푸시를 한 적이 있기 때문인지 덮어 씌워도 깃허브에 반영되지 않고 남아 있었음 얘네는 bin 폴더처럼 깃허브에서 직접 삭제할 수도 없어서 다른 컴퓨터에 pull 할 때마다 조마조마했음 [error 해..

    [Java] 05_배열(Array)

    05_배열(Array) 변수: 메모리에 값을 저장할 수 있는 공간(상자, 박스) => 종류에 맞는 값, 변수에는 한 번에 한 개의 값만 대입 가능 배열: 메모리에 값을 저장할 수 있는 공간(상자, 박스) => 종류에 맞는 값, 배열에는 한 번에 여러 개의 값을 대입 가능 => 배열은 저장된 값마다 인덱스 번호(방 번호)가 0부터 시작하여 설정 배열도 참조 변수다! => stack에 주소값이 들어가 있음! *변수: "자료형에 맞는 값 하나만" 담을 수 있는 개념 예) int a =10; // a == 10 a = 20; // a == 20 *배열: "자료형에 맞는 값 여러 개"를 담을 수 있는 개념 예) int[] b = new int[3]; // int형의 값이 들어갈 수 있는 방을 3개 만들겠다 방 [..

    [이클립스 Run As 오류] Errors exist in required project(s) 프로젝트명 Proceed with launch?

    [error 내용] 어제 숙제 끝내고 bin 폴더까지 깃허브에서 삭제한 후 오늘 학원 컴퓨터에 04_Control project pull 완료 신난 마음으로 열심히 코딩하는데 Run As 할 때마다 계속 거슬리는 에러 메시지가 뜸 run 클래스와 수정하던 코딩 클래스 모두 문제 없음 Errors exist in required project(s) 04_Cotrol Proceed with launch? 나는 확신이 들었다 너 내가 어제 bin 폴더 삭제했다고 이러는 거니... [error 해결 방법] 가 아니었다...! 구글링 해 보니 Problem 탭을 확인해 보면 된다고 해서 확인 결과 A_If 클래스가 말썽을 일으킴 너 갑자기 왜 이러니 bin 폴더에 A_If.class 파일이 없다! 내 깃폴더에? ..

    [Java] 배열 연습문제 정리

    길이가 5인 String배열을 선언하고 “사과”, “귤“, “포도“, “복숭아”, “참외“로 초기화 한 후 배열 인덱스를 활용해서 귤을 출력하세요. ex. 귤 public void practice4() { String[] fruitArr = new String[5]; fruitArr[0] = "사과"; fruitArr[1] = "귤"; fruitArr[2] = "포도"; fruitArr[3] = "복숭아"; fruitArr[4] = "참외"; System.out.print(fruitArr[1]); } 문자열을 입력 받아 문자 하나하나를 배열에 넣고 검색할 문자가 문자열에 몇 개 들어가 있는지 개수와 몇 번째 인덱스에 위치하는지 인덱스를 출력하세요. ex. 문자열 : application 문자 : i ap..