목차
Class Members (클래스 멤버)
Fields (필드)
Methods (메서드)
Multiple Classes (여러 클래스)
Class Members (클래스 멤버)
필드(= 속성) : 값 담는 변수
메서드 (= 함수) : 특정 동작 수행.
[예제]
class Hz
{
string host = "Homzzang.com";
int open = 2012;
public void sayHello()
{
Console.WriteLine("코딩 배우러 놀러오세요.");
}
}
Fields (필드)
클래스 안에서 특정 값을 담는 '변수' 의미.
※ '속성'이라 부르기도 함.
※ 객체 뒤에 마침표 찍고 변수명 기재해 필드에 접근.
(예) obj.field
[예제1]
using System;
namespace Homzzang
{
class Hz
{
string host = "Homzzang.com";
int open = 2012;
static void Main(string[] args)
{
Hz hzObj = new Hz();
Console.WriteLine(hzObj.host);
Console.WriteLine(hzObj.open);
}
}
}
결과값:
Homzzang.com
2012
[예제2]
※ 필드 생성 시 값을 비워두고, 나중에 객체 생성 시 할당 가능.
using System;
namespace Homzzang
{
class Hz
{
string host;
int open;
static void Main(string[] args)
{
Hz hzObj = new Hz();
hzObj.host = "Homzzang.com";
hzObj.open = 2012;
Console.WriteLine(hzObj.host);
Console.WriteLine(hzObj.open);
}
}
}
결과값:
Homzzang.com
2012
PS. 예제2 방법은 한 클래스로 여러 객체 생성 시, 유용.
using System;
namespace Homzzang
{
class Member
{
string id;
int level;
static void Main(string[] args)
{
Member mb1 = new Member();
mb1.id = "sinbi";
mb1.level = 2;
Member mb2 = new Member();
mb2.id = "sir";
mb2.level = 3;
Console.WriteLine(mb1.id + ": " + mb1.level);
Console.WriteLine(mb2.id + ": " + mb2.level);
}
}
}
결과값:
sinbi: 2
sir: 3
Methods (메서드)
1.
메서드 (= 클래스에 속하는 함수) 정의 방법 2가지.
ⓘ 클래스 안 메서드 정의. (예제1)
② 클래스 밖 메서드 정의. (예제2)
2.
메서드 호출하려면, 객체 뒤에 마침표 (.) 찍고 메서드명() 기재.
(예) obj .method ();
3.
static 수정자 : 객체 생성 안 하고도 접근 가능.
public 수정자 : 객체 생성 통해서만 접근 가능.
[예제] 클래스 안 메서드 정의.
using System;
namespace Homzzang
{
class Hz
{
string host;
int open;
public void sayHello()
{
Console.WriteLine("코딩 배우러 놀러오세요.");
}
static void Main(string[] args)
{
Hz hzObj = new Hz();
hzObj.sayHello();
}
}
}
결과값: 코딩 배우러 놀러오세요.
Multiple Classes (여러 클래스)
※ 클래스 정의와 객체 생성을 별도의 파일로 분리.
1. Hz.cs 생성. (※ 클래스 정의 파일)
using System;
namespace Homzzang
{
class Member
{
public string id;
public string name;
public int level;
public void sayHello(string x)
{
Console.WriteLine(x + " 님, 반가워요.");
}
}
}
2. Index.cs 생성. (※ 객체 생성 / 출력 파일)
using System;
namespace Homzzang
{
class Index
{
static void Main(string[] args)
{
Member mb1 = new Member();
mb1.id = "sinbi";
mb1.name = "신비";
mb1.level = 2;
Member mb2 = new Member();
mb2.id = "sir";
mb2.name = "그누";
mb2.level = 3;
mb1.sayHello(mb1.name);
mb2.sayHello(mb2.name);
}
}
}
결과값:
신비 님, 반가워요.
그누 님, 반가워요.
주소 복사
랜덤 이동
최신댓글