Loading...

자바 초보부터 B형까지 - 다양한 기준으로 정렬하기 위한 객체정렬 배우기

1. custom comparator 국어, 영어, 수학 점수를 포함한 학생 5명의 정보가 주어질때, 국어 점수를 기준으로 오름차순 정렬하는 방법은? 자바에서는 custom comparator로 직접 만들어야한다 반환 타입이 반드시 int여야하며, 정렬을 위한 객체 class를 타입으로 하는 1개의 인자를 가지고 있어야한다. 정렬을 위한 객체 뒤에 implements Comparable을 붙이고 public int compareTo 함수를 해당 class 안에 override annotator와 함께 적어준다. class Student implements Comparable { int kor, eng, math; public Student(int kor, int eng, int math){ this.ko..

자바 초보부터 B형까지9 -class 생성하기 필수-

1. class 두 학생의 국어 영어 수학 점수가 (90,80,80), (80,70,60)이라고 한다면, 이를 코드로 표현한다면 어떻게 해야할까? 가장 쉬운 방법은 6개의 변수를 만드는 것이다. int kor1 = 90, eng1 = 80, math1 = 90; int kor2 = 80, eng2 = 70, math2 = 60; 하지만 학생 수가 많아질수록 변수의 수는 그만큼 증가하니 상당히 귀찮은 작업이 된다. 이런 경우 하나의 학생을 지칭하는 새로운 형태를 정의하며, 그 형태를 이루기 위한 (국어, 영어, 수학) 점수 세트를 정의할 수 있을 것이다. 이를 class라고 부르고 자바에서 class는 다음과 같이 정의할 수 있다. class Student { int kor, eng, math; publi..

자바 기본 배우기 -생성자란 무엇인가-

1. 생성자 인스턴스가 생성될 때 최초 한번 수행되는 함수 new 키워드와 함께 호출 클래스를 생성할 때 반드시 하나의 생성자를 호출 = 생성자는 여러개일 수 있다 성공적으로 실행되면 힙 영역에 객체 생성 후 객체의 주소가 리턴 필드의 초기화, 객체 생성 시 실행되어야 할 작업 작성 클래스 이름은 PascalCase로 작성하는 것이 관례이며, 생성자 이름은 클래스 이름과 동일하다 보니까 파이썬 __init__이랑 비슷함 2. 생성자의 특징 클래스와 이름이 대소문자도 모두 동일하다 반환타입이 없으며, void도 작성하지 않는다 필드의 초기화, 객체 생성 시 실행되어야 할 작업 작성 public class Dog { public Dog() { System.out.println("기본 생성자!"); Syste..

2023. 1. 10. 21:11

react 기본 익히기 - element에 대하여-

1. element의 정의 리액트 앱을 구성하는 요소 Elements are the smallest building blocks of React apps "엘리먼트는 리액트 앱의 가장 작은 빌딩 블록들" 개발자 도구에서 볼 수 있는 elements 탭의 elements는 DOM element이고, HTML의 요소이다. 실제로 화면에서 볼 수 있는 것들 그러면 react element는..? 리액트 초창기에는 "화면에 나타나는 내용을 기술한 자바스크립트 객체"를 나타냈다고 한다 실제 브라우저의 DOM에 존재하는 엘리먼트는 DOM 엘리먼트가 되고, 리액트의 Virtual DOM에 존재하는 엘리먼트가 리액트 엘리먼트가 된다 리액트 엘리먼트는 DOM 엘리먼트의 가상 표현이 된다 DOM 엘리먼트는 리액트 엘리먼트..

2022. 10. 20. 22:38

자바스크립트 기초문법8 -object에 대하여-

1. 개요 객체는 속성의 집합이고, 중괄호 내부에 key와 value의 쌍으로 표현함 파이썬의 dictionary key는 문자열 타입만 가능하고, 띄어쓰기 등의 구분자가 있으면 따옴표로 묶어서 나타낸다. value는 함수 포함 모든 타입 가능하다 객체의 요소에 대한 접근은 점(.)이나 대괄호([])가 가능하다. 단 key 이름에 띄어쓰기 같은 구분자가 있으면 대괄호 접근만 가능하다 띄어쓰기가 있으면 .으로는 접근 못하고, key에서 ''으로 묶어야한다는게 무슨 말인지 알겠지 2. 속성명 축약 객체 정의할때, key와 할당하고자 하는 변수의 이름 value가 서로 같으면 key:value로 쓰던걸 key,로 축약 가능 예를 들어 다음과 같이 축약이 가능하다 3. 메소드명 축약 메소드를 value로 가질때..

2022. 7. 30. 22:26

객체지향프로그래밍이란 3편 -class를 생성하는 방법과 attribute의 모든 것-

1. class를 생성하기 위한 기본 문법 1-1) 클래스 정의 class : or class (): class MyClass: pass class Myclass(): pass 1-2) 인스턴스 생성 my_instance = () 객체의 설계도인 class를 가지고 하나의 인스턴스 my_instance가 생성되는 my_instance = MyClass() 1-3) method 사용 .() my_instance.my_method() 1-4) 속성(attribute) 호출 . my_instance.my_attribute class만으로는 뭔가 할수는 없고 class를 통해 인스턴스를 만들어야 뭔가를 할 수 있어 1-5) 코드 예시 설계도 class인 Person에서 하나의 실체 person1 인스턴스를 생성..