BackEnd/Java 썸네일형 리스트형 [java] Getter와 Setter 1. Setter : 데이터를 검증해서 유효한 값만 필드에 저장하는 메소드 2. Getter : 필드 값이 객체 외부에서 사용하기에 부적절한 경우, 적절한 값으로 변환해서 리턴할 수 있는 메소드 ◎ 객체의 필드(데이터)를 외부에서 마음대로 읽고 변경할 경우 객체의 무결성(결점이 없는 성질)이 깨질 수 있습니다. ex) 자동차의 속력은 음수가 될 수 없는데, 외부에서 음수로 변경하면 객체의 무결성이 깨집니다. Car myCar = new Car(); myCar.speed = -100; ◎ 객체지향 프로그래밍에서는 직접적인 외부에서의 필드 접근을 막고 대신 메소드를 통해 필드에 접근하는 것을 선호합니다. private double speed; private : 같은 클래스 내부에서는 접근 가능 setter를.. 더보기 [java] 접근 제한자 ◎ 접근 제한자 ▷ 중요한 필드와 메소드가 외부로 노출되지 않도록 만들어 객체의 무결성을 유지하기 위해서 사용합니다. ▷ 접근 제한자는 public, protected, private의 세가지 종류 ▶ 제한 범위를 벗어나면 사용할 수 없습니다. ◎ 클래스의 접근 제한 ▷ 클래스를 선언할 때 public 접근 제한자를 생략하면 클래스는 다른 패키지에서 사용할 수 없습니다. ▶ default가 됩니다. ▷ 클래스를 선언할 때 public 접근 제한자를 붙이면 클래스는 같은 패키지뿐만 아니라 다른 패키지에서도 사용할 수 있습니다. ◎ 예시 1. example01.package1 (1) A(class) package example01.package1; class A { // default 접근 제한 } (2).. 더보기 [java] 이것이 자바다 ch06 fianl 필드와 상수 1. final 필드 선언 ▷ final 필드는 초기값이 저장되면 최종적인 값이 되어서 프로그램 실행 도중에 수정할 수 없게 됩니다. ▷ final 필드에 초기값을 주려면 필드 선언 시에 초기값을 대입하거나 생성자에서 초기값을 대입합니다. public class Korean { // 인스턴스 final 필드 선언 final String nation = "대한민국"; final String ssn; // 인스턴스 필드 선언 String name; // 생성자 선언 public Korean(String ssn, String name) { this.ssn = ssn; this.name = name; } } public class KoreanExample { public static void main(Strin.. 더보기 [java] 이것이 자바다 ch06 인스턴스 및 정적 멤버 1. 인스턴스(Instance) 멤버 ◎ 인스턴스 멤버 : 필드와 메소드 등 객체(class)에 소속된 멤버 ▷ 객체가 생성되어야만 사용 가능한 필드, 메소드입니다. ◎ this 키워드 ▷ 객체 내부에서는 인스턴스 멤버에 접근하기 위해 this를 사용합니다. 객체는 자신을 'this'라고 지칭합니다. ▷ 생성자와 메소드의 매개변수명이 인스턴스 멤버인 필드명과 동일한 경우, 인스턴스 필드임을 강조하고자 할 때 this를 주로 사용합니다. public class Car { // 필드 String model; int speed; Car(String model){ this.model = model; } // 메서드 void setSpeed(int speed) { this.speed = speed; } // 메서.. 더보기 [java] 이것이 자바다 ch06 메소드 1. 메소드 선언과 호출 ◎ 메소드 선언 ▷ 객체의 동작을 실행 블록으로 정의하는 것입니다. ▷ 리턴 타입 : 메소드 실행 후 호출한 곳으로 전달하는 결과 값의 타입 ▷ 메소드명 : 첫 문자를 소문자로 시작하고, 캐멀 스타일로 작성 ▷ 매개변수 : 메소드를 호출할 때 전달한 매개 값을 받기 위해 사용합니다. ▷ 실행 블록 : 메소드 호출 시 실행되는 부분입니다. ◎ 메소드 선언 예시 public class Calculator { // 리턴 값이 없는 메소드 선언 void powerOn() { System.out.println("전원을 켭니다."); } // 리턴 값이 없는 메소드 선언 void powerOff() { System.out.println("전원을 끕니다."); } // 호출 시 두 정수 값을.. 더보기 [java] 이것이 자바다 ch06 클래스 1. 객체 지향 프로그래밍 ▷ 객체(object) : 물리적으로 존재하거나 개념적인 것 중에서 다른 것과 식별 가능한 것입니다. ▷ 객체는 속성과 동작으로 구성합니다. 자바는 이러한 속성과 동작을 각각 필드와 메소드라고 합니다. ◎ 객체 지향 프로그래밍(OOP) : 객체들을 먼저 만들고 이 객체들을 하나씩 조립해서 완성된 프로그램을 만드는 기법입니다. ◎ 객체의 상호 작용 ▷ 객체 지향 프로그램에서도 객체들은 다른 객체와 서로 상호작용하면서 동작합니다. ▷ 객체가 다른 객체의 기능을 이용할 때 이 메소드를 호출해 데이터를 주고 받습니다. ▷ 매개값 : 객체가 전달하고자 하는 데이터이며, 메소드 이름과 함께 괄호() 안에 기술합니다. ▷ 리턴값 : 메소드의 실행 결과이며, 호출한 곳으로 돌려주는 값입니다... 더보기 [java] package jar 파일 만들기 (export/import) 목적 : 만들어 놓은 패키지를 다른 java project에서 사용하고 싶을 때 사용합니다. 1. 원하는 패키지를 선택해서 Export → java → JAR file 2. 아래의 밑줄과 같이 이름이 생성됩니다. (별도 파일을 만들지 않아도 됩니다.) 3. jar 파일이 생성되었습니다. 4. 다른 java project를 생성했을 때 해당 패키지를 사용하고 싶다면 해당 프로젝트에서 Properties를 선택합니다. 5. Java Build Path → Libraries → Add External JARs → 원하는 폴더 선택해 열어줍니다. 6. 적용시켜주면 해당 패키지와 클래스들을 모두 사용할 수 있습니다. 더보기 [java] 클래스를 이용한 문제 풀이 문제) 아래는 Student 클래스를 호출하여 객체를 생성 후 필드에 값을 입력하여 아래와 같이 출력을 한 프로그램이다. 학생의 성적은 과제 점수와 시험 점수로 이루어진다. 총점에 과제 점수와 시험 점수의 반영률은 각각 40%와 60%이다. Student 클래스를 작성해보시오. 결과) 이름 : 선남 과제 점수 : 91 시험 점수 : 84 학점 : B 이름 : 선녀 과제 점수 : 86 시험 점수 : 95 학점 : A 정답 코드) public class Student { String name; int assignmentsScore; int examScore; char grade; public String toString(){ String str = "" ; int score = (int)(this.assig.. 더보기 이전 1 ··· 9 10 11 12 13 14 15 ··· 17 다음