단순한 클래스 사용 예제 입니다 class J0516_1 {long number;String owner;int point;int balance; void use(int amount){balance += amount;System.out.println("현재 카드 사용액 : " + balance);}void payBill(int amount){balance -= amount;System.out.println("지불액: "+amount+", 지불 잔액:"+balance);addPoint(amount);}void addPoint(int amount){point += amount/1000;System.out.println("보너스 포인트:" +point);}public static void main(String[..
이번에는 간단한 상속의 예제를 살펴 보겠습니다. Person 클래스와 Student 클래스가 있는데 Student 클래스는 Person 클래스를 상속 받았기 때문에 Person클래스는 Student클래스의 상위클래스가 되고 Student 클래스는 Person클래스의 하위 클래스가 됩니다 .Student 클래스는 Person클래스가 가지고 있는 메소드와 매개변수를 자신의 것 처럼 사용할 수 있습니다. class Person { int age; public String name; protected int height; private int weight; public void setWeight(int weight){ this.weight= weight; }public int getWeight(){return ..
상속이란 부모 클래스가 가지고있는 모든것을(생성자 제외) 자식클래스가 물려받아 같이 공유하며 나아가 확장(extends)하는 개념이다. 부모 클래스를 상위 클래스(superclass)로 부르며 상속받는 자식 클래스를 하위클래스(subclass)라고 부른다.확장(extends)한다는 말은 부모클래스에서 가지고있는 추상적인 메소드를 자식클래스에서 구체적인 메소드로 오버라이드 할수 있기 때문에 자바에서는 상속을 정의할때 확장(extends)한다 라고 정의합니다.상속의 장점은 코드가 중복되는것을 막을수 있고 공통적인 코드를 변경할시 시간을 단축 시킬수 있다는 점 입니다. 예를들면 어떤 상위 클래스를 상속받는 하위클래스가 여러가지 있을때 상속을 하지 않았을땐 하위클래스 들이 가지고있는 코드를 하나 하나 변경해주어..
ArryaList를 처음 접하는 사람들은 배열에서 발전된 형태라고 보시면 됩니다.일반적으론 배열을 선언하면 배열의 인덱스를 다 채우거나 인덱스를 못채울수도 있는데 만약 다 채웠다면 더이상 배열에다가 값을 넣지 못할것이고 다 못 채웠다면 그만큼 메모리가 낭비되는 현상이 일어납니다.자바에서는 이러한 문제를 해결하기 위해 ArrayList 라는 클래스를 제공하는데 C를 공부하신분들 이라면 연결리스트와 비슷한 개념이라고 생각 하시면 되겠습니다.(물론 많은 차이가 있습니다.)일단 ArrayList의 장점은 배열의 크기를 임의로 변화시킬수 있다는 것과 List에 들어갈수 있는 타입들을 사용자가 직접 설정할수 있다는 것입니다. 일반적인 기본형 타입도 가능하고 자신이 만든 클래스의 객체 타입도 설정할수 있습니다.선언방..
ArrayList를 활용한 성적 평가 예제입니다.ArrayList에 대해선 따로 포스팅 하겠습니다.package edu.ks.exam2;import java.util.ArrayList;import java.util.Scanner; public class J0502_3 { private int jumsu1;private int jumsu2;private int jumsu3;private int jumsu4;private int jumsu5;public static void main(String[] args) {Scanner scan = new Scanner(System.in);//1ArrayList st = new ArrayList(); // arrraylist 생성 동적으로 객체를 생성하기 위해Strin..
get, set 메소드를 활용한 성적평가 예제 입니다.메인 클래스에서 student 라는 객체를 생성후 student 내부에 인스턴스에 set 메소드를 활용하여 값을 넣은후 get메소드를 사용하여 값을 받아오는 예제입니다. package edu.ks.exam1;import java.util.Scanner; public class J0502_2 { private int jumsu1;private int jumsu2;private int jumsu3;private int jumsu4;private int jumsu5;public static void main(String[] args) {Scanner scan = new Scanner(System.in);String ans;String number;Strin..
이차원 배열을 활용한 성적 평가 예제 입니다.import java.util.Scanner; public class J0502_1 { private int jumsu1;private int jumsu2;private int jumsu3;private int jumsu4;private int jumsu5;private int total;public static void main(String[] args) {Scanner scan = new Scanner(System.in);String ans;String number;String name;String[][] student = new String[50][4]; int avr=0;int i =0;hakjumc hj = new hakjumc();J0502_1 a ..
클래스와 배열을 사용하여 학생들의 성적을 출력하는 예제 입니다. package J0429; import java.util.Scanner; public class J0429_2 { private int jumsu1;private int jumsu2;private int jumsu3;private int jumsu4;private int jumsu5;private int total;public static void main(String[] args) {Scanner scan = new Scanner(System.in);String ans;String number;String name;String[] student = new String[10]; int avr=0;int i =0;hakjumc hj = new..
클래스를 활용한 계산 예제 입니다. package J0429; import java.util.Scanner; public class J0429_1 {public static void main(String[] args) {Scanner scan = new Scanner(System.in);int num1,num2;char op;System.out.println("두 정수와 연산자를 입력하세요 : ");num1 = scan.nextInt();num2 = scan.nextInt();op = scan.next().charAt(0); //연산자를 문자로 변환 scan변수가 받은 0번째 인덱스를 문자로 변환한다.switch (op) {case '+' :Add add = new Add();add.setvalue(nu..
1. 캡슐화(encapsulation)캡슐화란 데이터(속성)과 데이터를 처리하는 함수를 하나로 묶는것이다.다시말해 객체 외부에서는 개체 내부 정보를 직접 접근하거나 조작할 수 없고, 외부에서 접근할 수 있도록 정의된 오퍼레이션을 통해서만 관련 데이터에 접근할 수 있다.(게터, 세터)캡슐화의 장점은 객체의 세부내용이 외부에 은폐(정보은닉)되어, 변경이 발생할 때 오류발생이 적으며 재사용이 용이하다.다시말해 객체들 간의 메시지를 주고 받을 때 각 객체의 세부 내용은 알 필요가 없으므로 인터페이스가 간결해지고, 객체간의 결합도가 낮아진다. 2. 정보 은닉(Information Hiding)정보 은닉 이란 캡슐화에서 가장 중요한 장점이다.다른 객체에게 자신의 정보를 숨기고 자신의 연산만을 통하여 접근을 허용하는..