본문 바로가기

dev, tech224

클래스의 생성자 실행 순서 기본 생성자 실행 순서 static void Main(string[] args) { MovieTicket mt = new MovieTicket(5); } public class Ticket { public Ticket() { Console.WriteLine("public Ticket() 생성자가 실행되었습니다."); } public Ticket(int howMany) { Console.WriteLine("public Ticket(int howMany) 생성자가 실행되었습니다."); } }// end of Ticket class public class MovieTicket:Ticket { public MovieTicket() { Console.WriteLine("public MovieTicket() 생성자.. 2006. 1. 16.
클래스에 대한 깊은 이해 - 접근 권한 / 상속 권한 클래스 class { 클래스의 멤버} 접근권한 키워드- internal : 하나의 클래스를 현재의 프로젝트 내에서만 사용 가능하게 함- public : 현재 프로젝트 외의 다른 프로젝트에서도 필요에 따라 가져다 쓸 수 있도록 함* 접근권한 키워드를 생략한다면, 항상 internal 키워드로 간주 상속권한 키워드-abstract : 한 클래스가 부모 클래스로서의 기능만 갖게 해 줌. 즉, 그 클래스를 이용한 객체의 생성은 불가능-sealed : 클래스의 상속을 불가능하게 만드는 것. 부모 클래스로서의 사용은 불가능.즉, 객체의 생성에만 사용 가능 예) abstract class FirstClass{ .....} 접근 권한 키워드를 생략하였기 때문에, internal 키워드의 효과를 갖는다.즉, 한 프로젝트.. 2006. 1. 16.
다형성 자식과 부모 관계에 있는 클래스들이 있을 때 부모의 객체를 통해서 자식의 함수 실행 등여러 가지 연산을 처리하는 것이다. 이미 상속 받았음에도 불구하고 자식은 부모에게 다시 와서부모의 이름으로 일을 처리해 달라고 부탁하는 것이다. 그러나, 자식은 자신이 부모로부터 상속 받은 것들 외의 다른 메소드나 속성을 추가하였을 것이다. 부모는 자신이 상속해준 것들, 즉, 메소드나 속성 외에 자식이 직접 만들어낸 것들은 사용할 수 없다. 예) MovieTicket mTicket = new MovieTicket();// 자식의 객체 생성Ticket baseTicket = mTicket;// 부모의 객체 생성과 자식 객체의 대입baseTicket.issue();//부모의 이름으로 자식을 위해 issue(()라는 메소드를.. 2006. 1. 16.
enumerations public enum Coffee{mocha,flatwhite,cappucino,latte,espresso}; ..........Coffee whatCoffee;whatCoffee = Coffee.flatwhite;.... whatCoffee의 타입은 Coffee이기 때문에, enum에서 정의한 값만 올 수 있다. 그렇지 않은 경우, 오류메시지 출력 한 변수에 부적절한 값을 대입하는 프로그래머의 사소한 실수를 막을 수 있다 2006. 1. 14.