본문 바로가기

자바53

Class(3)-Inheritance(상속) 사용하기 다수의 class를 만들어야 하는데, 모든 class가 공통된 속성과 행동을 공유하는 경우라면 inheritance를 사용하여 효율적으로 코드를 작성할 수 있습니다. 정확히는 class 간의 관계가 "is a" 관계일 때 inheritance를 적용할 수 있습니다. 실생활에서 예를 들어보겠습니다. 동물과 고양이는 어떤 관계인가요? 고양이가 동물에 속하는 관계입니다. 즉, 고양이가 동물 (A cat is an animal)이라고 말할 수 있습니다. 이런식으로 class 간의 관계도 동물과 고양이와 동일한 관계라면 inheritance를 사용해주면 됩니다. Class 상속을 하기 위해서는 extends keyword를 사용합니다. 1 2 3 4 5 6 //Volvo class를 만들 때 Car class 상.. 2022. 4. 25.
Class(2)-Constructor-set을 간편하게 인스턴스를 생성할 때 set해주어야 하는 fields가 많으면 일일이 설정해주기가 번거로워지는데, constructor를 사용하면 좀 더 간편하게 set을 할 수 있게 됩니다. Constructor는 object가 생성될 때 한 번만 작동(호출)하는 특수한 method입니다. Class의 object를 생성할 때 보면, Car car = new Car() 와 같은 방식으로 생성하게 됩니다. 이때 new 뒤의 Car() 부분이 사실상 constructor를 호출하는 것입니다. 직접 커스텀 constructor를 생성하려면 해당 class 파일로 가서 아래 코드와 같이 작성하면 됩니다. 1 2 3 public Car() { } cs 보시면 해당 constructor에는 public 키워드만 사용했을 뿐 다른.. 2022. 4. 25.
Class(1)-Class란 & Class 사용하기 1. Class 란? Java는 OOP(Object-oriented Programming, 객체지향) 언어에 속합니다. OOP 즉, 객체지향은 다수의 객체를 만들고 생성한 객체를 사용하여 프로그래밍을 하는 방법입니다. 객체란 실생활 용어로 사물이라고 생각하면 됩니다. 모든 사물이 각각의 특성과 행동(이 물건을 가지고 무엇을 할 수 있는지)을 가지고 있듯이, 각 객체 역시 고유한 특성, 행동과 같은 속성을 가집니다. 예를 들어서, "가방" 이라는 객체는 넓이, 높이, 색상과 같은 특성을 갖을 것이고 물건을 보관하고 물건을 옮기는 등의 행위를 할 수 있습니다. 프로그래밍 언어에서 사용되는 객체 역시 실생활에서 만나는 사물들처럼 독특한 특성과 행동 양상을 갖습니다. 객체지향이론은 발생하는 모든 사건들은 객체들.. 2022. 4. 25.
User Input 받는 방법 - Scanner사용 Scanner는 코딩테스트를 하려다 보니 알게된 class 인데, String이나 integer등 input을 받을 수 있도록 도와주는 역할을 한다. Scanner 변수를 만들어 주면 콘솔창에 보이지 않는 투명의 입력 칸이 생기게 됩니다. 먼저 Scanner를 사용하려면 아래와 같이 Scanner를 선언해 주어야 한다. 1 2 3 Scanner sc = new Scanner(System.in); sc.close(); cs Scanner를 사용 완료하고 더 이상 사용하지 않게 될 때에는 close 해주어야 하므로, Scanner를 선언할 때 close()까지 같이 적어주는 것이 좋다. 이렇게 Scanner를 선언하면, 자동으로 Scanner가 import됩니다. 보면 콘솔창에 output을 찍어낼 때 사용.. 2022. 4. 22.
축약 연산자 (operator abbreviation) Java에는 어떠한 축약 연산자들이 있는지 알아보겠습니다. int myNum = 1; 1이라는 int 값을 가지는 myNum를 선언하고 myNum에 축약 연산자를 사용해보겠습니다. 1. 1을 더하거나 빼고 싶을 때 사용하면 좋은 연산자 1. 변수++ : 1을 더해 주는 연산자 입니다. myNum++; // 1 + 1 = 2 2. 변수-- : 1을 빼주는 연산자 입니다. myNum--; // 2 - 1 = 1 1번에서 ++로 1을 더해주었기 때문에 myNum은 2가 되어있는 상태이기에, --를 해주면 1 값을 갖게 됩니다. => 1을 곱하거나 나누는 것은 의미가 딱히 없기 때문에 ** 또는 // 연산자는 없는 것이겠죠? 2. 1이 아닌 숫자를 더하기/빼기/곱하기/나누기 할 때 사용하면 좋은 연산자 1. 변.. 2022. 4. 9.
반응형