2008년 04월 14일
9
- 캡슐화-데이터를 간결화 하기위해 편의에 의해 묶어놓는 작업
- 은닉성 을 띈다(C++부터 등장한 특성=class)
function test()
{
var user = new User();
user.name = "박용우";
user.address = "경기도 小구리시";
user.phone = "011";
user.age = "21";
PrintUser(user);
}
function User()
{
this.name;
this.address;
this.phone;
this.age;
}
function PrintUser(user)
{
alert("name :" +user.name + "\n" + "address :" +user.address);
}
←User라는 객체 생성
각 데이터를 캡슐화
- Function 은 함수이자 클래스..캡슐등등 많은 의미 포함되며 사용가능.
- 재사용부분과 재사용하지 않는 부분 나뉨.
- .js 파일인 J스크립트를 사용 하여 재사용부분을 효율적으로.한다.
- 실존으로 만드는 과정을 인스턴스라 한다.(실체화,공간생성)
- Int x; => int는 타입, x는 실제(공간)
- Ex) var a;(공간이 생긴것이아님.)
- a=23; <= (비로소 공간이 생김)
- 데이터 = 기본데이타(속성..) int,float….(기본자료형) 사용자자료형은 null
- var user = new User();=> new통해 인스턴스화
- Function user()
- {
- }
- *this.name <=name 을 할시 null값에 공간 확장이되어 추가됨.
멤버함수는 멤버데이터를 출력해야한다.
Ex) <script type = "text/javascript" src="user.js"></script>
this.
Function User()
{
This.Print = Print; <=이렇게 지정해야 function. 안에 function을 사용할때 이용가능.
Function Print() => this.Print = function() 줄일 수 있음
{
}
}
-추가-
객체지향적인 사고를 가져라.
C++ 에서는 객체지향적으로 프로그램을 만들 수 있게 지원을 해주지만,
JavaScript에서는 지원을 하지 않습니다.
- 여기서 객체지향적이라는 것은 필요한 부분을 모아 놓는다는 것으로 캡술화
한다고 생각하면 됩니다.
JavaScriptd에서 객체지향 적으로 쓰기위해서는 Function을 사용 합니다.
하지만, 은닉성을 보장 할 수가 없습니다.
(다른 곳에서 쓰지 못하게 보호 할 수 없다)
ex) 샤브샤브를 먹기위해서 냄비가 필요하지만, 냄비가 없어도
후라이팬을 사용하여 먹을 수도 있다.
자동차(결과물) -> 부품(객체) 객체 == 부품
부품을 분석하다 == 객체를 분석하다
부품의 기능 == 객체의 속성(개체를 일반화 시키기 위한 특성.)
New로 생성하면 처음엔 null값으로 공간 생성.. This가 null값을 표현.
# by | 2008/04/14 10:47 | 트랙백 | 덧글(0)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]