본문 바로가기

✨ Java57

자바(JAVA) - 클래스 (Class) StudentManage 학생 관리 <프로젝트> 학생 관리 프로젝트 ( StudnetManage ) 이번에는 Java 클래스로 배웠던 프로젝트를 해보려고 한다. 학생 관리 프로그램이며, 최대 3명의 학생을 저장하여 임의로 학생의 정보를 변경할 수 있는 프로그램을 제작하였다. Student 클래스 HTML 삽입 미리보기할 수 없는 소스 학생의 이름, 나이, 학점, 연락처를 변수로 설정하고, 매개변수로 받도록 생성자를 만들어주었다. 이후 학생의 모든 정보를 출력해주는 메소드와 이름과 연락처를 초기화해주는 setter를 설정해주었다. StudentManage 클래스 HTML 삽입 미리보기할 수 없는 소스 먼저 학생관리 생성자에 학생이 3자리 들어갈 공간을 만들어주었고, 이때 index를 0으로 선언과 동시에 초기화했다. 1번의 학생 등록 메소드를 만들고, .. 2023. 2. 10.
자바(JAVA) - 클래스 (Class) MemberService <문제> 문제 MemberService 클래스에 login( ) 메소드와 logout( ) 메소드를 선언하려고 합니다. login( ) 메소드를 호출할 때에는 매개값으로 id와 password를 제공하고, logout( ) 메소드는 id만 매개값으로 제공합니다. MemberService 클래스와 login( ), logout( ) 메소드를 선언해보세요. 1. login( ) 메소드는 매개값 id가 "hong", 매개값 password가 "12345"일 경우에만 true로 리턴하고 그 이외의 값일 경우에는 false를 리턴하도록 하세요. 2. logout( ) 메소드의 내용은 "로그아웃 되었습니다."가 출력되도록 하세요. HTML 삽입 미리보기할 수 없는 소스 MemberService 클래스이다. HTML 삽입 미.. 2023. 2. 9.
자바(JAVA) - 클래스 (Class) - 2 Setter와 Getter 그리고 toString() Setter와 Getter에 대해서 알아보려고한다. 간단히 말해보자면 Setter 메소드는 값을 변경해주는 것, Getter는 리턴, 반환해주는 것이다. 2023. 2. 7.
자바(JAVA) - 클래스 (Class) - 1 Class란? 설계도라고 생각하면 쉽게 접근이 가능하다. 자동차를 만들기 위한 설계도로 클래스의 기본을 다져보고자 한다. 세부 단위로 살펴보자. 예를들어 통상적으로 소문자 car -> 변수명 , car( ) -> 메소드명, Car -> 클래스명 으로사용된다. 클래스는 관례상 대문자로 시작하는 낙타 표기법을 사용한다. HTML 삽입 미리보기할 수 없는 소스 carname과 brand, price와 같이 클래스에 정의한 변수들을 멤버 변수 혹은 필드라 한다. 자동차의 정보와 기능에 대해 변수와 메소드를 Car라는 클래스에 입력 해주었다. HTML 삽입 미리보기할 수 없는 소스 클래스에는 두 가지 용도가 있다. 라이브러리(libray) 클래스 : 실행할 수 없으며 다른 클래스에서 이용하는 클래스 실행 클래스 .. 2023. 2. 7.
자바(JAVA) - 메소드 (Method) - 2 메소드를 호출할 때는 메소드 명이 같아야하고, 매개변수의 정보도 같아야 한다. 즉, 매개변수를 입력할 때 매개변수의 자료형과 개수가 일치해야한다. HTML 삽입 미리보기할 수 없는 소스 접근제한자 "void"가 있다. 메소드 실행 후 리턴 할 데이터가 없다는 뜻이다. 리턴할 때 void 대신해서 정수(int) , 문자열(String) , 실수(Double)을 쓴다. HTML 삽입 미리보기할 수 없는 소스 메소드에 배열을 사용하여 리턴해주는 값도 한번 알아보자. HTML 삽입 미리보기할 수 없는 소스 배열도 마찬가지로, 리턴하고자 하는 변수의 자료형을 일치시켜줘야하고, 이때 리턴값을 받으므로 public static void method( ) 대신 public static int[ ] method( ) 가.. 2023. 2. 7.
자바(JAVA) - 메소드 (Method) - 1 메소드란? 현실의 객체가 하는 동작을 프로그래밍화 하는 것이다. 메소드를 작성하는 이유 반복적으로 사용되는 코드의 중복 방지 코드의 양을 줄일 수 있고 유지 보수가 용이함 메소드 선언 = 클래스 안, 또 다른 메소드 선언의 밖에서 진행 메소드 호출 = 메소드의 선언 영역 안에서 사용 선언 문법 접근제한자 리턴타입 메소드명 ( ) { 실행 내용 작성 ~~~ } public class 메소드01 { public static void main(String[] args) { for(int i=0; i 2023. 2. 7.
자바(JAVA) - 상속(Inheritance) -1 상속(Inheritance)이란? 부모 클래스와 자식 클래스가 있으며 자식 클래스는 부모 클래스를 선택해서, 그 부모의 값을 상속받아 쓸 수 있게된다. 상속 관계의 객체를 생성하면 그 내부에는 부모와 자식이 모두 생성된다. 상속 관계의 객체를 호출할 때, 대상 타입을 정해야한다. 이때 호출자의 타입을 통해 대상 타입을 찾는다. 현재 타입에서 기능을 찾지 못하면 상위 부모 타입으로 기능을 찾아서 실행한다. 찾지 못하면 컴파일 오류 발생. 상속을 왜해? 이미 마련되어 있던 클래스를 재사용해서 만들 수 있기 때문에 개발 시간을 줄여줄 수 있어 매우 효율적(유지 보수성 향상))이다. 상속을 하더라도 자식 클래스가 부모의 모든 것들을 물려받을 수 있는 것은 아니다. 부모 클래스의 private 접근 제한을 갖는 .. 2023. 2. 2.
자바(JAVA) - 인터페이스 (Interface) 기초2 tv패키지에 클래스 NewLgTV와 NewSamsungTV를 생성해주자. 위와 같이 NewSamsungTV 클래스를 만들어 implements TV를 직접 쳐준 후 메서드를 만든다. NewLgTV도 똑같이한다. TV 인터페이스와 결과적으로 코드를 실행시킬 TvUser도 함께 만들어준다. TV인터페이스는 클래스에서 불러 올 메서드를 만들어 준다. public은 생략한다. NewLgTV 클래스와 NewSamsungTV 클래스에서 만들어진 메서드에 출력 값을 넣어준다. TV 인터페이스명 참조변수 명에 새로운 인터페이스를 구현한 생성자를 넣어준다. 이때 인터페이스 기초1에서 설명했던 클래스의 이름과 다른점은 통일해주었다는 점이다. 인터페이스를 새로 정의하지 않고 쓸 수 있다는 간편함이 있다. 인터페이스의 장점 .. 2023. 2. 2.
자바(JAVA) - 인터페이스 (Interface) 기초 1 인터페이스의 구성요소 1. 메소드의 선언 ( 내용은 없다. ) 인터페이스는 변수 없음 ex) int a; 이런게 없다. 인터페이스는 생성자 없음 (객체 생성이 불가) 2. 인터페이스 내부의 메소드는 반드시 접근 제한자를 public으로 사용해야한다. (그렇기 때문에 public을 생략해도 알아서 public으로 생각해준다.) 메소드의 선언만 있고, 구현부가 없으며, 모든 메소드는 암묵적으로 public abstract로 선언된다. 필드(멤버 변수)는 상수만 가질 수 있고, 모든 필드는 암묵적으로 public static final로 선언된다. 즉, 인터페이스는 클래스를 만들기 위한 설계도라고만 이해하고 넘어가자. 인터페이스는 생성자가 없으므로 객체 생성 불가. 위에서 말했듯이 인터페이스는 기능을 제공하지.. 2023. 2. 2.