JAVA 공부(107)
-
Day18 - interface 02
오늘은 비대면 수업인 날 입니다 ~ 그래서 집에서 zoom 을 통해 강의를 듣고 있는데요 interface 는 중요하니까, 오늘도 좀 더 배운다고 합니다 interface interface 는 클래스와 클래스의 매개체 역할을 한다고 했죠? 이번에는 이걸 알아 봅시다 interface 를 만들게요 자. interface 에 있는 메서드 들은 무조건 오버라이딩을 해줘야 합니다. 그 얘기는, 사용방법 이라고도 이야기 할 수 있을까요? 즉. 메서드의 형태를 보고 어떤 기능으로 만들어야 하는지 사용방법 을 주는겁니다. 여기서 저희가 지어놓은 메서드의 이름은.. 그 기능이 어떤 기능인지 유추할 수 있게 해줍니다. 주석을 달아 놓는다면 더 좋겠죠? 이제 위의 interface 를 써서 LG 클래스를 만들어 봅시다 i..
2021.03.11 -
Day17 - interface 01
이번에는 interface 에 대해 알아 봅시다 interface 게임을 좀 해본 분들은 많이 들어본 말이죠? UI - User Interface interface 는 매개체 라고 생각을 하시면 되는데.... 추상클래스(abstract) 와 90% 유사합니다 interface는 class 대신에 사용 할 수 있습니다. interface 내부는 상수 or 추상메서드 를 사용할 수 있습니다. 추상메서드를 사용한다는 얘기는 즉. 오버라이딩을 무조건 해줘야 합니다. 형태를 먼저 한번 봅시다 접근제어자 뒤에 class 가 오는 자리에 interface가 왔어요 ~ 그리고 변수를 사용하면 저절로 상수화 ( public static final double PI = 3.14 ) 가 됩니다 메서드를 사용하면 저절로 추상..
2021.03.10 -
Day17 - Quiz를 풀어 봅시다
오늘은 대면 수업하는 날 입니다 ~~ 그런데, 저희 조에서 저만 학원에 나와 있네요... 우리 조원 분들 어디갔나요 ~~~~~~~~~ 돌아오세요 ~~~~~~~~~~ ㅠㅠㅠㅠㅠ 오늘은, 어제 배웠던 static , abstract 가 어려웠기 때문에, 약 30분 정도 같이 복습을 해주셨어요 ~~ 그리고 진도를 나가지 않고, 바로 quiz를 내주셨답니다. 그럼 같이 quiz를 풀어 볼까요? - 추상화 클래스 Shape 를 상속받아서 Circle , Rect 를 만들어라 - 원형은 생성될 때, 이름과 변의 길이를 받을 것 - getArea()는 원의 넓이를 반환하도록 오버라이딩 - PI 는 상수형태로 선언 - main 에서 이름과 넓이를 출력할 것 추상클래스 Shape 는 선생님이 만들어 주셨습니다. 우리는 ..
2021.03.10 -
Day16 - abstract
이번에는 abstract 에 대해 알아 보아요 ~ abstract 영어로 이런 뜻을 가지고 있어요 ~ 프로그래밍 에서는 .... 클래스와 메서드에서 사용이 되는데요 ~ 클래스 앞에 abstract 가 붙으면, 그 클래스는 객체화 할 수 없습니다. 즉. 상속을 통해서만 사용 할 수 있습니다. 그리고, 메서드 앞에 abstract가 붙으면, 자식 클래스는 무조건 오버라이딩을 해주어야 합니다. ※ abstract 를 메서드에 사용하면, 클래스 앞에도 무조건 붙여 주어야 합니다. 예제를 보죠 프랜차이즈 지점이라고 생각을 해봅시다. 본사에서 사과, 포도, 오렌지 를 팔기로 했고, 가격은 지점마다 알아서 결정하기로 했습니다. 그런데... 서울지점에서 사과와 포도만 가격을 정하고, 오렌지의 가격을 까먹고 안 정한 겁..
2021.03.09 -
Day16 - final
이번에는 final 에 대해 알아 봅시다 final final 은 클래스, 메서드, 변수에 사용할 수 있는데, 먼저 변수에 사용하는 걸 봅시다 변수에 사용을 하면, 값을 고정시킨다 라는 뜻을 가지고 있습니다. final 변수는 모두 대문자로 쓰기로 약속되어 있습니다. 이렇게 final 을 앞에 붙이면, 이후에 다른곳에서 값을 변경시킬 수 없습니다. 상수화가 된다고 생각을 하셔도 됩니다 C언어 에서는 const 와 비슷합니다. main 에서 사용을 해보죠 보시면 이렇게, 변수의 값을 다른 곳에서 변경시킬 수 없습니다. 즉. 변하면 안되는 값에 쓰는 데 활용하면 됩니다 그리고, 값을 변경시킬 수만 없는거지, 사용은 할 수 있는겁니다 final 은 변수 앞에 붙일 경우.... 처음 1번 초기화 후에 값을 변경..
2021.03.09 -
Day16 - static 변수의 초기화 / 싱글톤
이번에는 static 변수의 초기화 하는 방법에 대해 알아 봅시다 static 변수의 초기화 static 변수를 초기화 하는 방법은 2개가 있습니다. 1. 직접 초기화 2. static{} 을 통한 초기화 예제를 한번 보도록 하죠 먼저, 비교를 위해서 이렇게 static 변수와 일반 변수를 만들어 줍시다. 직접초기화 를 알아보죠 직접초기화는, 클래스에서 선언할때, 바로 초기화 해주는 겁니다 static{}을 통한 초기화 를 알아보죠 static { } 을 쓰고 중괄호{} 안에 초기화 해주면 됩니다. static 은 단 1번만 실행이 됩니다. 그런데 사용은 잘 안하고, 직접초기화를 더 많이 사용한다고 합니다. 그래서 Computer 클래스는 이렇게 만들어 주었고, main 에서 확인해 봅시다 순서를 보면,..
2021.03.09