百聞 不如一打 [백문이 불여일타]

백번 묻는것 보다 한번 쳐보는게 낫다

Java 39

getter / setter 란 무엇인가?

객체지향 프로그래밍 에서는 캡슐화 (은닉성) 이 중요하다. 다른 클래스에서 해당 클래스의 멤버변수에 함부로 접근하지 못하도록 하고싶을때 접근제한자 private를 붙여 사용할것이다. 하지만 멤버변수를 사용해야할 경우도 생기기때문에 그럴경우 직접적인 데이터를 변경하거나 가져오기 보다는 해당 클래스의 getter / setter 메서드를 통해서 데이터를 사용할수있도록 하는것이다.

Map / HashMap 이란?

HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션 Map 인터페이스를 상속하고 있기에 Map의 성질을 그대로 가지고 있다. Map은 키와 값으로 구성된 Entry객체를 저장하는 구조를 가지고 있다. 값은 중복 저장될 수 있지만 키는 중복 저장될 수 없다. 만약 기존에 저장된 키와 동일한 키로 값을 저장하면 기존의 값은 없어지고 새로운 값으로 대치된다. HashMap은 이름 그대로 해싱(Hashing)을 사용하기 때문에 많은 양의 데이터를 검색할 때 뛰어난 성능을 보인다. HashMap 선언 1 2 3 4 5 6 7 8 HashMap map1 = new HashMap();//HashMap생성 HashMap map2 = new HashMap();//new에서 타입 파라미터 생략가능 HashM..

2020-11-09 Java log - 게시판 기능 추가

- makeBoard 를 통하여 게시판 생성 - selectBoard 를 통하여 게시판 선택 - currentBoard 를 통하여 현재 선택된 게시판이 무엇인지 확인 https://github.com/qbj700/easy-text-board qbj700/easy-text-board Contribute to qbj700/easy-text-board development by creating an account on GitHub. github.com 그외 2020-11-09 수정사항 github 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 ..

Java/Java log 2020.11.09

오버라이딩 (Overriding)

오버라이딩 오버라이딩이란 부모가 가지고 있는 메소드와 똑같은 모양의 메소드를 자식이 가지고 있는 것이다. 즉 자식 클래스 에서 부모 클래스의 메소드를 재정의 하여 사용하는 것이다. 부모 클래스의 메소드가 없어지는것은 아니며, 자식 클래스에서 재정의된 메소드가 없다면, 부모 클래스의 메소드가 자동적으로 실행될것이다. 추가적으로 super.부모 클래스의 메소드(); 를 사용한다면 오버라이딩 된 자식 클래스의 메소드 와 더불어 부모 클래스의 메소드 도 사용할 수 있다.

super와 부모의 기본생성자

class가 인스턴스화 될때 생성자가 실행되면서 객체의 초기화를 한다. 그 때 자신의 생성자만 실행이 되는것이 아니고, 부모의 생성자부터 실행된다. 1 2 3 4 5 6 7 8 9 10 11 12 public class Car{ public Car(){ System.out.println("Car의 기본생성자입니다."); } } public class Bus extends Car{ public Bus(){ System.out.println("Bus의 기본생성자입니다."); } } Colored by Color Scripter cs 생성자 테스트 1 2 3 4 5 public class BusExam{ public static void main(String args[]){ Bus b = new Bus(); ..

추상 클래스 [abstract]

추상클래스 추상 클래스란 구체적이지 않은 클래스를 의미한다. 독수리, 타조는 구체적인 새를 지칭하는데 새, 포유류 같은 것은 구체적이지 않다. 이런 것을 구현한 클래스를 추상 클래스라고 한다. 추상 클래스 정의하기 추상 클래스는 클래스 앞에 abstract 키워드를 이용해서 정의한다. 추상 클래스는 미완성의 추상 메소드를 포함할 수 있다. 추상 메소드란, 내용이 없는 메소드 이다. 즉 구현이 되지 않은 메소드이다. 추상 메소드는 리턴 타입 앞에 abstract라는 키워드를 붙여야 한다. 추상 메소드는 {} 를 생략한다. 메소드가 하나라도 추상(abstract) 메소드 라면, 해당 클래스도 추상(abstract)클래스가 될수밖에 없다. 추상 클래스는 인스턴스를 생성할 수 없다. 추상 클래스는 부모 클래스의..

상속 이란?

상속 상속이란? 부모가 가진것을 자식에게 물려주는것을 의미한다. 노트북은 컴퓨터의 한 종류다. 침대는 가구의 한 종류다. 혹은 침대는 가구다. 소방차는 자동차다. 이렇게 말할 수 있는 관계를 is a 관계 혹은 kind of 관계라고 한다. Car 를 상속받은 Bus 를 class로 표현하는 방법 1 2 3 4 5 6 7 public class Car{ } public class Bus extends Car{ } cs 자바는 클래스 이름 뒤에 extends 키워드를 적고 부모클래스 이름을 적게 되면 부모 클래스가 가지고 있는 것을 상속받을 수 있게 된다. 상속이란 부모가 가지고 있는 것을 자식이 물려받는 것을 말한다. 즉, 부모가 가지고 있는 것을 자식이 사용할 수 있게 된다. 부모가 가지고 있는 메소드..