Java (국비)86 상속 2 세상에 모든 자손 클래스는 생성자의 첫줄에 super() 메서드를 호출 한다. 하지만, 특별한 경우가 아니라면, super()은 생략 되어 있다. 아래의 그림을 보자. 하위 클래스에 무언가 오류가 뜨는것을 볼 수 있다. 이 오류는, 언뜻 보면 클래스에 이상이 있는것 처럼 보일 수도 있겠지만, 사실은 자식 클래스의 생성자에서 일어나는 오류 이다. 하지만, 자식 클래스에 생성자를 만들어 놓지 않았기 때문에 표현할 곳이 없어서 클래스에 빨간줄이 가는 모습을 볼 수 있다. 여기서 super() 메서드의 개념을 알아야 한다. super() = this()와 유사 하다. super() : 자신의 부모 클래스의 생성자. this() : 자기 자신 클래스의 생성자. 클래스 A의 생성자의 인자값이 int 이기 때문에, .. 2023. 5. 15. 상속 상속의 특징 1. 코드의 재사용성 증가 2. 코드의 유지보수 용이 상속을 사용할 시 주의 사항 ★ 부모 클래스의 코딩이 끝나면, 자식 클래스의 코딩을 시작하기 ★ ★ 본인이 사용하는 모든 멤버변수를 다 초기화 하고 있는지를 확인 ★ 멤버변수 = 클래스 변수 + 인스턴스 변수 위와 같은 클래스 A가 있을 때, extends를 사용함으로써 이 둘은, 상위 클래스와 하위 클래스로 불리우게 된다. 그리고, 부모 클래스 에서는 자식 클래스의 내용에 접근이 불가능 하다. 자식 클래스 에서는 부모 클래스의 멤버변수, 메서드에 접근이 가능 하다. 라는 특징을 가진다. 아래의 main문을 통해 알아 볼 수 있다. 1. 참조변수 aaa를 통해 클래스 A를 객체로 인스턴스 2. 클래스 A에 생성자가 따로 없으므로, 디폴트 .. 2023. 5. 15. 학생부 프로그램 제작 이번에는 유효성 검사를 연습해 보았다. 느낀점 : 1. break 와 continue를 계속 사용해서 while문으로 묶게 되었는데, 코드도 엄청 길어지고 계속 안쪽으로 파고 들어가는 느낌이여서 어려웠다. 2. 해당 지역에서만 어떤 변수를 사용하면 지역변수로 사용하는게 좋을듯 하다. 3. 그 외의 유효성 검사 생각해보기 2023. 5. 14. next() 그리고 nextLine() 의 차이 Test 문제를 풀면 Scanner 클래스는 계속하여 사용 하게 되는데, 이때, next() 와 nextLine()을 사용하다가 발생하는 문제에 대해 정리를 해보았다. Scanner 클래스의 메서드는 아래와 같다. next() nextLine() nextByte() nextShort() nextInt() nextLong() nextDouble() close() 등.. 이런식으로 이클립스에서 확인해 볼 수 있다. 현재 주로 사용하는 메서드는 next() nextLine() nextInt() 등인데, nextLine() 을 사용하다가 문제가 자주 발생했다. 예를들어 아래와 같이 코드를 짰을 경우에, 사용자로부터 num은 잘 입력받다가 str값을 입력 하기 전에 입력이 종료되어 바로 출력값이 나오는 것을 확인.. 2023. 5. 13. 학생부 프로그램 제작 (연습) 이런 프로그램을 만들기 위해서, 설계서를 먼저 작성 해보자. 1. 클래스명 : Student 2. 멤버변수 : 인스턴스 변수 => int stuNum, String name, int score 클래스 변수 => X 3. 생성자 : 학생 객체 생성 4. 메서드 : 학생 목록 출력 기능 학생 점수를 변경할 기능 짚고 넘어가야 할 부분 유효성 검사 연습 2023. 5. 13. 자판기 프로그램 제작 2 짚고 넘어갈 부분 main()에서 객체의 멤버 변수에 직접적으로 접근을 하지 않는다 ! System.out.println((i + 1) + ". " + data[i].name + " [" + data[i].cnt + "] " + data[i].price + "원"); 메인에서 중요한 데이터들을 직접 쓰게 되면 안전, 보안성에 위배된다. 그래서 printInfo 메서드를 만들어 줘야 한다. 2023. 5. 12. 자판기 프로그램 제작 1 제작전에, 생각 해야 할 부분 프로그래밍 이란 ? -> 유효성 검사 (프로그래밍의 기초) -> 꼼꼼하게 "프로그램 이란" : 특정 데이터에 대해 CRUD 기능을 제공 하는 것을 말한다. CRUD 란 ? 대부분의 컴퓨터 소프트웨어가 가지는 기본적인 데이터 처리 기능인 Create(생성), Read(읽기), Update(갱신), Delete(삭제)를 묶어서 일컫는 말이다. 예시 C : 데이터 생성 네이버 => 회원가입 인스타=> 사진(동영상) 업로드 R : 데이터 읽어오기 (출력) 네이버 => 로그인 인스타=> 피드보기, 피드목록보기, 친구 스토리 보기 U : 데이터 변경 네이버 => 마이페이지 인스타=> 글 변경 D : 데이터 삭제 네이버 => 회원탈퇴 인스타=> 글 삭제 이 개념을 바탕으로, 어떤 데이터.. 2023. 5. 12. Java 자바를 시작하기 전에 .. 패키지 : 소스 코드를 넣을 서랍. 클래스 : 소스 코드 1장. 자바 언어의 기본단위로 클래스 파일은 ".java" 확장자 명을 가진다. 대문자로 시작한다. 모든 프로그램 '동작'은 "함수(메서드)"가 진행한다. 함수 == 기능 x == 입력값, input, 인자, 인수, 매개변수, 파라미터, argument -> 같은말 y == 결과값, output, 반환값, return -> 같은말 public static void main() { } public : 자바는 "공개정책" static : "객체와 무관하게" void main() { } 함수(메서드)는 반드시 3가지를 가지고 있는다. => 함수의 3요소 1. input 2. output 3. 기능 함수명은 반드시 '기능을 유추.. 2023. 5. 11. 객체 생성 하기 4 (책) 2023. 5. 10. 이전 1 ··· 4 5 6 7 8 9 10 다음