Bài tập hướng đối tượng trong C#
Để củng cố những kiến thức đã học lập trình hướng đối tượng trong lập trình C#. Mời bạn đọc cùng thực hành qua bài tập C# cơ bản dưới đây.
Mục lục nội dung
1. Đề bài
Tạo project mới. Sau đó, tạo 3 class: Person, Teacher, Student, trong đó hai lớp Teacher và Student kế thừa lớp Person.
Bạn có thể tùy ý tạo các thuộc tính và các phương thức cho các lớp này. Chẳng hạn: lớp Person có phương thức setAge(int age), lớp Student có phương thức GoToClass() để in ra thông báo I'm going to class., ...
2. Chương trình
Dưới đây là chương trình C# minh họa lời giải cho bài tập hướng đối tượng trong C#. Bạn nên tạo mỗi class trong một file riêng rẽ, rồi sau đó tạo một class chung có chứa phương thức main() để thao tác với các lớp này:
Lớp Person:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Csharp
{
class Person
{
protected int age;
public void LoiChao()
{
Console.WriteLine("Hello VietJack!!!");
}
public void SetAge(int n)
{
age = n;
}
}
}
Lớp Student
Sử dụng dấu hai chấm (:) để nói rằng lớp Student đang kế thừa lớp Person.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Csharp
{
class Student : Person
{
public void ThongBaoTuoi()
{
Console.WriteLine("Tuoi cua ban la: {0} tuoi", age);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Csharp
{
class Teacher : Person
{
private string mon_hoc;
public void GiangDay()
{
Console.WriteLine("Bat dau giang day!!!");
}
}
}
Lớp StudentAndTeacherTest
Cuối cùng, bạn tạo một lớp có tên là StudentAndTeacherTest: Đây là lớp chứa phương thức main() và là lớp nơi chúng ta làm việc chính.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Csharp
{
class StudentAndTeacherTest
{
static void Main()
{
bool debug = false;
Console.WriteLine("\nLap trinh huong doi tuong trong C#");
Console.WriteLine("----------------------------------\n");
//tao doi tuong Person va goi phuong thuc Greet()
Person myPerson = new Person(); //day la constructor mac dinh
myPerson.LoiChao();
/*tao mot doi tuong Student, thiet lap tuoi cho sinh vien nay la 21,
gui loi chao toi anh ta va thong bao tuoi*/
Student myStudent = new Student(); //day la constructor mac dinh
myStudent.SetAge(21);
myStudent.LoiChao();
myStudent.ThongBaoTuoi();
/*tao mot doi tuong Teacher, thiet lap tuoi cho giang vien nay la 30,
*de nghi anh ta chao va bat dau giang day*/
Teacher myTeacher = new Teacher(); //day la constructor mac dinh
myTeacher.SetAge(30);
myTeacher.LoiChao();
myTeacher.GiangDay();
if (debug)
Console.ReadLine();
Console.ReadKey();
}
}
}
Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.
Sau khi tạo xong mọi thứ, cấu trúc project của chúng ta sẽ có dạng sau:
Tham khảo thêm
- doc Bài tập C# kinh điển
- doc Bài tập C# cơ bản
- doc Bài tập kiểu dữ liệu trong C#
- doc Bài tập lệnh IF, ELSE, SWITCH trong C#
- doc Bài tập vòng lặp FOR, WHILE, DO...WHILE trong C#
- doc Bài tập mảng một chiều trong C#
- doc Bài tập String trong C#
- doc Bài tập hàm trong C#
- doc Bài tập struct trong C#
- doc Bài tập đọc ghi file trong C#