반응형

Class 7

[python] Class

class 객체에서 사용되는 속성과 메서드를 정의한 틀 객체 : 클래스로부터 생성되어 클래스의 속성과 메서드를 가진다. 속성 : 클래스와 객체에서 사용되는 변수 메서드 : 클래스와 객체에서 사용되는 함수 ▶ 기본 문법 class 클래스명 : 클래스 변수 = 값 def 메소드명(self, 매개변수..) : self.인스턴스변수 = 매개변수 ▶ 클래스명을 선언할 때 앞글자는 대문자를 사용한다. 클래스 내에 함수를 선언 할 때는 파라미터 앞에 첫번째 인자값에 self를 넣어야한다. * self가 꼭 아니더라도 상관없다. 파이썬 자체에서 첫번째 인자값을 자동으로 넘겨주기 때문이다. class MyClass : number = 100 def inc_10(self) : MyClass.number += 10 # 클래..

Python 2022.09.03

[Java] Class

Class 자료와 자료를 처리하는 기능이 모여있는 사용자 정의형 데이터 타입 * Class = Data + Method Data : 프로그램에서 유지, 관리해야할 데이터, Attribute라고도 함 Method : Data를 조작하는 함수. Static Memory에 할당을 전역영역에 하기 위한 Keyword. 전역영역 할당의 의미 전역 접근이 가능해 Application이 종료할 때 까지 존재. Heap, Stack Memory 영역과 관련이 없음. 접근할 때 Class명 만을 이용. Class Variable Static을 이용하여 선언된 Attribute 전역영역에 위치 Class의 instance와 전혀 상관이 없음. 접근시 Class명 이용. Class Method Static으로 선언한 Met..

JAVA 2022.06.02

[Java] Comment(주석), 클래스(class), 생성자, 정보은닉

Comment(주석) 제작한 주석을 그대로 코딩한다. O 소스 코드를 주석한다. X = 주석 밑으로 코딩하라. = 코드 밑에 주석을 달지 마라. ▶ Refactoring : 결과의 변경 없이 코드의 구조를 재조정하는 활동. ex) 배열 sc를 for문의 length로 넣는것. Class ▶ 자료와 자료를 처리하는 기능이 모여있는 객체를 기반으로 하는 사용자 정의형 데이터 타입. 객체지향 프로그래밍은 구조적 프로그래밍에서 데이터와 기능을 합침으로서 class가 발전된 형태이다. data + 기능 = object object를 Language 차원에서 데이터 타입으로 구현한것이 class다. SP -> OOP ※ 객체지향프로그래밍의 오브젝트와 자바에서 말하는 오브젝트는 다른 것이다. ​ 구조적 프로그래밍의 ..

JAVA 2022.05.31

[JavaScript] 원주율에 따른 원의 넓이, 둘레 구하기 (예제)

문제 원의 둘레와 넓이를 출력하시오. 조건 반지름과 원주율에 문자와 음수는 입력되지 않습니다. 원주율을 사용자가 선택할 수 있습니다. '𝝿', '3.14', '사용자 입력(단 3.14보다 크고 3.15보다 작음)' '𝝿'를 이용하여 계산할 시 결과 값이 ~𝝿로 끝나야 함. (공식 참고) class를 이용하십시오. private를 적용하십시오. 둘레와 원주율의 getter, setter가 클래스 안에 존재해야 합니다. 입력한 원주율의 값이 출력되어야 합니다. 반지름과 원주율이 입력되지 않을 경우 각각 1과 3.14의 값을 가집니다. 해법 1. class를 생성합니다. private를 적용합니다. constructor를 생성합니다. radius와 pi를 생성합니다. Protection method를 생성하여..

JavaScript 2022.04.27

[JavaScript] Static

static static element(속성), static method(메서드) 전역화 지역변수 또는 전역화 지역 메서드를 만들기 위한 키워드 staitc은 전역 영역에 존재하기 때문에 static 입장에서 class는 "소속"의 개념일 뿐이다. static 변수, static 메서드는 class가 인스턴스화 되는지 여부와 전혀 관계없다. static 메서드의 this는 의미가 없다. static 변수도 접근제어가 가능하다. * 프로그램이 시작해서 종료될 때 까지 메모리가 유지된다. 문법 static methodName() { ... } 설명 정적 메서드는 클래스의 인스턴스 없이 호출이 가능하며 클래스가 인스턴스화 되면 호출할 수 없습니다. 정적 메서드는 종종 애플리케이션의 유틸리티 함수를 만드는 데 ..

JavaScript 2022.04.21

[JavaScript] 상속(Inheritance), super()

상속(Inheritance) 개념 코드의 재활용성을 높이는 프로그래밍 기법 - 자바스크립트의 정의 코드의 재활용성을 높이고 공통적인 규약을 제공하기 위한 객체지향의 특성. - 설계 측면의 정의 부모 클래스를 확장시켜 자식 클래스를 만드는 프로그래밍 기법. - 개발 측면의 정의 장점 유지보수성이 향상된다. 개발시간이 단축된다. 기능이 추가되어도 품질이 지속적으로 유지된다. 가독성이 향상된다. 단점 관리자의 오해가 발생할 수 있다. 문법 형식 class extented calss name extends base class name {} 상속의 생성자 super() 상속 시 상위 클래스의 object가 먼저 초기화되어야 하며 이를 지원하기 위한 문법이다.항상 하위 클래스 생성자에서 가장 앞에 코딩되어야 한다...

JavaScript 2022.04.21

[JavaScript] Class(클래스), private(접근제어)

Class (클래스) 개념 ES5에서는 클래스가 없으며 객체형, 클로저, 생성자, 프로토타입 등을 이용해 클래스와 유사한 구조를 만들어 사용한다. ES5와 다르게 ES6에서는 클래스 문법을 직접적으로 지원함. 내부적으로 Class는 격국 object형과 같다. 형식 선언과 인스턴스 생성 클래스의 생성자 constructor로 생성자를 호출한다. ES6때 출현. class cs { constructor(){} } this를 통해 object에 변수를 등록한다. (object와 유사함.) * 생성자에 객체를 추가할 시 Shallow Copy(얕은 복사)에 주의한다. * Shallow copy(얕은 복사) 해결. (private 하단 참조) Method 추가 class의 method로 추가 readabilit..

JavaScript 2022.04.20
반응형