Professional Documents
Culture Documents
Ly Thuyet
Ly Thuyet
A. PHẦN LÝ THUYẾT
Trước tiên phải đặt một cái tên cho biến và chỉ ra biến đó sẽ lưu loại dữ liệu nào (số nguyên - int,
số thực double, chuỗi - string ...), việc này gọi là khai báo biến
Khi đặt tên biến C# cần lưu ý: tên biến có thể chứa chữ, số và ký tự _ nhưng ký tự đầu tiên của
tên biến không được dùng số, tên biến trong C# có phân biệt chữ hoa chữ thường.
Hằng số lưu trữ các giá trị mà không thay đổi được nữa, dùng từ khóa const để khai báo hằng số
(như khai báo, khởi tạo biến nhưng phía trước có từ khóa const)
Console.WriteLine(MON);
+Tính trừu tượng (abstraction) mô tả một cách tổng quát hóa (tập trung vào thông tin cần
thiết) mà không chi tiết thông tin về các đối tượng, không gắn cứng với một đối tượng cụ thể cần
mô tả (triển khai với interface, abstract).
+Tính đóng gói (encapsulation) dữ liệu đối tượng cố gắng như nằm trong một hộp đen, các
thành phần khác bên ngoài đối tượng không trực tiếp tác động đến dữ liệu (bên ngoài truy cập,
tác động thông qua các phương thức public cho phép, qua setter, getter ...).
+Tính đa hình (polymorphism) đối tượng ứng xử khác nhau tùy trường hợp cụ thể.
+Tính kế thừa (inheritance) đặc tính của lớp được kế thừa từ một lớp khác.
Kế thừa cho phép chúng ta định nghĩa ra một lớp mới dựa trên một lớp khác có sẵn (cách 1 lớp
có thể thừa hưởng lại những thuộc tính, phương thức từ 1 lớp khác và sử dụng chúng như là của
bản thân mình).
Kế thừa giúp cho việc mở rộng code - bảo trì trở nên dễ hơn.
+ Nếu khai báo lớp mà không chỉ ra phạm vi cụ thể thì phạm vi mặc định là internal.
+ Nếu khai báo thành phần bên trong lớp mà không chỉ ra phạm vi cụ thể thì phạm vị mặc
định là private.
Lớp (Class) là một kiểu dữ liệu tham chiếu nó định nghĩa một tập hợp các biến (trường dữ liệu,
thuộc tính) và phương thức (gọi chúng là các member - thành viên lớp).
+ Thuộc tính: là các thành phần dữ liệu hay còn gọi là các biến.
+ Phương thức: là các hàm thành phần thể hiện các hành vi của một đối tượng thuộc lớp.
+ Phương thức khởi tạo.
+ Phương thức huỷ bỏ.
Class trong C# thực chất là một kiểu dữ liệu mới do người dùng tự định nghĩa.
Đối với thành viên lớp (biến, thuộc tính, phương thức) thì có thể áp dụng các access modifiers
sau:
6. Các phương pháp lập trình trong lập trình OOP (Hàm, thủ tục, thông điệp, đối tượng)
Ngoài việc lưu giữ dữ liệu, các class (và struct) cũng có thể chứa các hàm! Các hàm được định
nghĩa bên trong một class sẽ được gọi là các hàm thành viên – member functions (hoặc đôi khi
là các phương thức – methods). Các hàm thành viên có thể được được nghĩa bên trong hoặc
bên ngoài của khai báo class. Ở thời điểm hiện tại, để cho đơn giản, chúng ta sẽ chỉ xét đến
trường hợp định nghĩa chúng bên trong class, trường hợp định nghĩa các hàm thành viên bên
ngoài class sẽ được trình bày sau trong bài này.
khai báo của hàm thành viên print():
void print() // defines a member function named print()
{
std::cout << m_year << "/" << m_month << "/" << m_day;
}
Đối với biến tĩnh thì dùng cho cho mọi đối tượng thuộc lớp, được khởi tạo một lần duy nhất. Nếu
muốn khởi tạo thành viên tĩnh của lớp khi lần đầu truy cập có thể dùng phương thức khởi tạo
tĩnh
Phương thức khởi tạo không tham số có chỉ thị truy cập là static, phương thức khởi tạo này dùng
để khởi tạo các thành viên dữ liệu tĩnh, nó tự động gọi khi truy cập một thành viên dữ liệu tĩnh
lần đầu. Ví dụ:
class MyColorCode
// Phương thức khởi tạo tĩnh, được gọi khi lần đầu truy cập một thành viên tĩnh
static MyColorCode()
color_danger = "Red";
color_info = "Cyan";
color_warning = "Yellow";
Console.WriteLine(MyColorCode.color_danger);
Console.WriteLine(MyColorCode.color_info);
Kết quả là
Red
Cyan
//
Cú pháp:
<phạm vi truy cập> static <kiểu trả về> <tên phương thức>
Thuộc tính - Property là các thành viên được đặt tên của các lớp, cấu trúc, và Interface. Các
biến thành viên hoặc các phương thức trong một lớp hoặc cấu trúc được gọi là các Field. Thuộc
tính là một sự kế thừa của các Field và được truy cập bởi sử dụng cùng cú pháp. Chúng sử
dụng accessor thông qua các giá trị của các Private Field có thể được đọc, được viết và được
thao tác.
Thuộc tính (Property) không đặt tên các vị trí lưu giữ. Thay vào đó, chúng có accessors mà đọc,
ghi hoặc tính toán các giá trị của chúng.
// khai báo một thuộc tính Code có kiểu dữ liệu public string Name
string:
{
public string Code
get
{
{
get
return name;
{
}
return code;
set
}
{
set
name = value;
{
}
code = value;
}
}
}
// khai báo một thuộc tính Age có kiểu dữ liệu int:
public int Age
{
get
{
return age;
}
set
{
age = value;
}
// khai báo một thuộc tính Name có kiểu dữ liệu
}
String:
10. Các khái niệm: quá tải toán tử, quá tải phương thức
Quá tải toán tử là định nghĩa lại chức năng của toán tử. Cú pháp quá tải toán tử giống khai báo một
phương thức, ngoại trừ tên phương thức được thay bằng từ khoá operator, theo sau là toán tử cần quá
tải. Cũng giống như phương thức, quá tải toán tử cũng có danh sách tham số và kiểu dữ liệu trả về.
Mục đích của việc quá tải toán tử là giúp cho chương trình trong gọn gàng, dễ hiểu hơn, thay vì phải gọi
phương thức.
Quá tải phương thức có nghĩa là viết hai hoặc nhiều phương thức trong cùng một lớp bằng cách sử
dụng cùng tên phương thức, nhưng các tham số truyền là khác nhau.
11. Đặc điểm và cách sử dụng các hàm tạo, hàm hủy
+ Là phương thức của lớp, nó được thi hành ngay khi đối tượng được tạo (bởi toán tử new), phương
thức khởi tạo có tên trùng với tên của lớp, không có kiểu trả về, bạn có thể tạo nhiều phương thức khởi
tạo - các phương thức này đều cùng tên với tên lớp nhưng tham số khác nhau. Lúc này khi khởi tạo đối
tượng với toán tử new tùy tham số khởi tạo mà nó sẽ gọi phương thức khởi tạo tương ứng.
+Việc sử dụng hàm khởi tạo đảm bảo dữ liệu của đối tượng bắt buộc phải khởi tạo ngay khi đối tượng
đó được tạo - tránh việc sử dụng đối tượng mà dữ liệu không chính xác.
+Khi đối tượng bị hủy (giải phóng) nó sẽ tự động thi hành một phương thức gọi là phương thức hủy
(hàm hủy Finalizer hay Destructor). Dùng phương thức hủy khi có nhu cầu dọn dẹp, giải phóng tài
nguyên chiếm giữ…
+Bộ nhớ trên HEAP là nơi lưu các đối tượng được tạo ra từ lớp (toán tử new), khi đối tượng đó không
còn biến nào tham chiếu (trỏ) đến thì nó sẽ được đánh dấu thu hồi - và khi GC thu hồi - phương thức
hủy sẽ được thi hành.
+ Một lớp chỉ được khai báo một phương thức hủy (trong khi có thể có nhiều phương thức tạo)
+ Bạn không thể gọi phương thức hủy một cách chủ động được (do hệ thống quản lý NET CORE
tự quyết định thi hành nó khi nào)
+ Khai báo phương thức hủy: tên trùng tên lớp, phía trước code ký hiệu ~, phương thức không
được có tham số.
12. Đặc điểm và cách khai báo tính kế thừa
Kế thừa có thể được định nghĩa là quá trình mà một lớp (class) có được các thuộc tính của một lớp
khác. Các thuộc tính đó có thể là một phương thức (method) hoặc một trường (field) nào đó. Lớp được
kế thừa sẽ được gọi chung là lớp cha, còn lớp kế thừa sẽ được gọi chung là lớp con.
1. Single Inheritance (Đơn kế thừa): đây là trường hợp một lớp chỉ được kế thừa từ một lớp duy
nhất, tức là một lớp con chỉ có một lớp cha.
2. Multiple Inheritance (Đa kế thừa): đây là trường hợp một lớp có thể kế thừa từ nhiều hơn một
lớp khác, đồng nghĩa với việc một lớp con có thể có nhiều hơn một lớp cha.
3. Multi-Level Inheritance (Kế thừa đa cấp): trong trường hợp này sẽ có một lớp kế thừa được
tạo ra từ một lớp kế thừa khác.
4. Hierarchical Inheritance (Kế thừa phân cấp): đây là trường hợp sẽ có nhiều lớp con được kế
thừa từ một lớp cha duy nhất.
5. Hybrid Inheritance (Kế thừa lai): hay còn được gọi là Kế thừa ảo (Virtual Inheritance). Đây
là trường hợp kế thừa được kết hợp bởi nhiều hơn một loại kế thừa, chẳng hạn như kết hợp
Đơn kế thừa với Đa kế thừa.
Cú pháp
class <tên lớp con> : <tên lớp cha>
{
}
Trong đó:
• class là từ khoá để khai báo lớp.
• <tên lớp con> là tên do người dùng đặt và tuân theo các quy tắc đặt tên (quy tắc đặt tên đã
trình bày trong bài BIẾN TRONG C#).
• <tên lớp cha> là tên lớp mà ta muốn kế thừa các đặc tính của nó.
Tính trừu tượng trong lập trình hướng đối tượng là chỉ nêu ra vấn đề mà không hiển thị cụ thể, chỉ
hiện thị tính năng thiết yếu đối với đối tượng người dùng mà không nói quy trình hoạt động. Ví dụ:
như tạo ra tính năng gửi tin nhắn, ta chỉ cần hiểu là người dùng viết tin rồi nhấn gửi đi. Còn quy trình
xử lý tin nhắn gửi như thế nào thì ta chưa đề cập đến.
Như vậy, tính trừu tượng là che giấu thông tin thực hiện từ người dùng, họ chỉ biết tính năng được
cung cấp: Chỉ biết thông tin đối tượng thay vì cách nó sử dụng như thế nào. Nó có những ưu điểm sau:
• Cho phép lập trình viên bỏ qua những phức tạp trong đối tượng mà chỉ đưa ra những khái niệm
phương thức và thuộc tính cần thiết. Ta sẽ dựa những khái niệm đó để viết ra, nâng cấp và bảo
trì.
• Nó giúp ta tập trung cái cốt lõi đối tượng. Giúp người dùng không quên bản chất đối tượng đó
làm gì.
- Phương thức ảo là phương thức được định nghĩa ở lớp cơ sở (lớp cha) mà các lớp dẫn xuất (lớp con)
muốn sử dụng phải định nghĩa lại. Virtual là từ khoá dùng để khai báo 1 phương thức ảo (phương thức
ảo là phương thức có thể ghi đè được).
- Cú pháp:
Phương thức khởi tạo không được là phương thức ảo nhưng phương thức hủy bỏ có thể là phương thức
ảo. Dùng phương thức ảo chậm hơn phương thức thông thường vì khi thực hiện mới được xác định cụ
thể.
function connect()
if (!$this->__conn){
// Kết nối
--------
2function dis_connect(){
3 // Nếu đang kết nối thì ngắt
4 if ($this->__conn){
5 mysqli_close($this->__conn);
6 }
7}
16. Để thực thi câu lệnh truy vấn ta sử dụng lệnh nào (Vd: cmd.ExecuteReader())
ExecuteNonQuery(): chuyên để thực thi các truy vấn không trả về dữ liệu (INSERT,
UPDATE, DELETE).
ExecuteScalar(): thực thi các truy vấn trả lại MỘT giá trị duy nhất, thường là kết quả của
ExecuteReader(): thực thi các truy vấn trả lại TẬP HỢP giá trị, như các truy vấn SELECT thông
thường.
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
4. Xem lại các ví dụ và bài tập thực hành để phát hiện lỗi trong chương trình.
1. Từ khóa nào sau đây dùng để khai báo cho việc sử dụng không gian tên trong C#?
C# đưa ra từ khóa using để khai báokhông gian tên cho việc sử dụng các định danh, kiểu dữ liệu định
nghĩa thuộc không gian têntrong chương trình:
using KhôngGianTên;
Thay vì sử dụng lệnh using, có thể sử dụng dấu chấm truy cập namespace.
Ví dụ: using System;
cho phép ta sử dụng Console.WriteLine() thay cho System.Console.WriteLine()
Ví dụ: using Demo1;
cho phép ta truy cập Example1.Show1() thay cho Demo1.Example1.Show1();
using cũng có thể cung cấp một không gian tên bí danh
Ví dụ:using Utils = Company.Application.Utilities;
2. Định nghĩa về tính bao đóng (encapsulation) trong lập trình hướng đối tượng là:
Tính bao đóng - Data encapsulation là một kỹ thuật bao đóng dữ liệu, và các hàm mà sử dụng chúng
và trừu tượng hóa dữ liệu là một kỹ thuật chỉ trưng bày tới các Interface và ẩn Implementation Detail
(chi tiết trình triển khai) tới người sử dụng.
3. Chọn đáp án đúng khi nói về ưu điểm của lập trình hướng đối tượng:
Đối tượng
Một đối tượng bao gồm 2 thông tin: thuộc tính và phương thức.
• Thuộc tính chính là những thông tin, đặc điểm của đối tượng. Ví dụ: con người có các đặc
tính như mắt, mũi, tay, chân…
• Phương thức là những thao tác, hành động mà đối tượng đó có thể thực hiện. Ví dụ: một
người sẽ có thể thực hiện hành động nói, đi, ăn, uống, . . .
Lớp ProtectedDerived kế thừa protected từ lớp Base. Khi đó, lớp ProtectedDerived sẽ có:
prot, pub và getPVT() là thành phần protected. pvt không thể truy cập được. Hàm getPVT() không thể
được sử dụng bên ngoài lớp ProtectedDerived. Trong ví dụ trên là không thể sử dụng trong hàm
main() bởi các đối tượng của lớp ProtectedDerived được.
Đó cũng là lý do cần tạo hàm getPub() để truy cập biến pub trong lớp ProtectedDerived.
8. Trong thừa kế, lớp cha có thuật ngữ tiếng Anh là gì?
=> superclass
Tính kế thừa cho phép xây dựng một lớp mới dựa trên các định nghĩa của lớp đã có. Có nghĩa là lớp
cha có thể chia sẽ dữ liệu và phương thức cho các lớp con. Các lớp con khỏi phải định nghĩa lại, ngoài
ra có thể mở rộng các thành phần kế thừa và bổ sung thêm các thành phần mới. Tái sử dụng mã nguồn
1 cách tối ưu, tận dụng được mã nguồn.
B
1. Bắt buộc phải xây dựng hàm tạo lớp khi: Khi cần khởi gán giá trị ban đầu cho thành phần thuộc tính
của lớp
2. Bắt buộc xây dựng hàm tạo lớp khi: Khi cần khởi gán giá trị ban đầu cho thành phần thuộc tính của
lớp.
C
3. C++ ,C,Pascal là ngôn ngữ lập trình cấu trúc.
4. Các dạng kế thừa là: Private, Public, Protected
5. Các hàm tạo có thể có là: Hàm tạo không đối; Hàm tạo có đối; Hàm tạo sao chép
6. Các lớp có thể kế thừa từ lớp điện thoại: đth cố định, di động, IG ,Iphone. Tất cả phương án
7. Các phương thức cơ bản của lớp xe hơi là: Đáp án: Khởi động, di chuyển, rẽ phải, rẽ trái, lùi
sau.
8. Các phương thức cơ bản của một chiếc máy giặt là: Cấp nước, đảo trộn, xả nước, vắt khô
9. Các trường hợp trùng tên trong kế thừa là: Trùng tên giữa phương thức lớp cha và phương thức
lớp con; trùng tên giữa phương thức giữa các lớp cha; Kế thừa lớp cha quá nhiều lần.
10. Các trường hợp trùng tên trong kế thừa là: Trùng tên giữa phương thức lớp cha và phương thức
lớp con; Trùng tên giữa phương thức giữa các lớp cha; Kế thừa lớp cha quá nhiều lần. Đáp án: Cả
(1) và (2)
11. Cách khai báo kế thừa trong java sử dụng từ khóa: extends
12. Cách khai báo phương thức ảo: Giống khai báo phương thức thường nhưng đứng đầu là từ khoá
virtual;
13. Cần In danh sách thí sinh dự thi gồm các thông tin: SBD, Họ và tên, Ngày sinh, Giới tính, Phòng
thi, Giờ thi. Người ta xây dựng hai lớp đối tượng là lớp đối tượng Thí sinh, lớp đối tượng Danh sách
thí sinh theo phòng. Phương thức cần thiết theo yêu cầu của bài toán cần phải xây dựng cho lớp thí
sinh là: Đáp án: Phương thức hiển thị thông tin từng thí sinh
14. Cần In danh sách thí sinh dự thi gồm các thông tin: SBD, Họ và tên, Ngày sinh, Giới tính, Phòng
thi, Giờ thi. Người ta xây dựng hai lớp đối tượng là lớp đối tượng Thí sinh, lớp đối tượng Danh sách
thí sinh theo phòng. Phương thức cần thiết theo yêu cầu của bài toán cần phải xây dựng cho lớp
danh sách thí sinh là: Đáp án: Phương thức hiển thị danh sách thí sinh
15. Cần In danh sách thí sinh dự thi theo phòng gồm các thông tin: SBD, Họ và tên, Ngày sinh, Giới
tính, Phòng thi, Giờ thi. Người ta xây dựng hai lớp đối tượng là lớp đối tượng Thí sinh, lớp đối
tượng Danh sách thí sinh theo phòng. Thuộc tính của lớp Danh sách thí sinh có thể là: Đáp án: Số
thí sinh, mảng các thí sinh
16. Cần In danh sách thí sinh dự thi theo phòng gồm các thông tin: SBD, Họ và tên, Ngày sinh, Giới
tính, Phòng thi, Giờ thi. Người ta xây dựng hai lớp đối tượng là lớp đối tượng Thí sinh, lớp đối
tượng Danh sách thí sinh theo phòng. Thuộc tính của lớp thí sinh là: Đáp án: SBD, Họ và tên,
Ngày sinh, giới tình, phòng thi, giờ thi
17. Cần xây dựng lớp đường thẳng y=ax+b. Thuộc tính của lớp đường thẳng này được xác định
là: Các hệ số a, b.
18. Cấu trúc thông thường của lớp trong C#: khia báo các trường dữ liệu cần dùng, khai báo các thuộc
tính và các phường thức thiết lập, lấy giá trị của thuộc tính, khai báo và xây dựng các phương thức
của lớp.
19. Cho biết các ví dụ sau ví dụ chứng tỏ tính kế thừa: Hình bình hành và hình chữ nhật /// Giáo viên
và Giáo viên giỏi///Điểm và Hình tròn/// Xe đạp và Xe đạp đua. Tất cả đều đúng
20. Cho biết cách khai báo phương thức ảo trong C++ nào sau đây là đúng: Virual
void[kiểu_dữ_liệu] Tên_phương_thức ([các tham đối]);
21. Cho biết khẳng định đúng nhất trong các khẳng định sau: Đáp án : Một lớp A có thể là bạn của
nhiều lớp
22. Cho đoạn chương trình sau: class A { private int x,y; } Hãy giải thích ý nghĩa của khai báo
này: Khai báo A là một lớp với hai thành phần thuộc tính là x, y kiểu số nguyên.
23. Cho khai báo sau:int trituyetdoi(int a); //tri tuyệt đối số nguyênlong trituyetdoi (long a); //tính trị
tuyệt đối số nguyên dàidouble trituyetdoi(double a); //tính trị tuyệt đối số thực dàiHãy cho biết các
khai báo trên là tính chất nào?Tính chất chồng hàm
24. Cho lớp A và lớp B, lớp A kế thừa lớp B trong hai lớp đều có phương thức Xuat. Nếu khai báo đối
tượng obj thuộc lớp A khi gọi đến phương thức Xuat(obj.Xuat( )) là gọi đến phương thức của lớp
nào.Lớp A.
25. Cho lớp A và lớp B, lớp A kế thừa lớp B trong hai lớp đều có phương thức Xuat. Nếu khai
báo đối tượng obj thuộc lớp A khi gọi đến phương thức Xuat(obj.Xuat( )) là gọi đến phương
thức của lớp nào. Lớp A.
26. Cho lớp A, B, C trong đó lớp C kế thừa lớp A, B. Trong lớp A, B đều có phương thức Xuat,
khi khai báo đối tượng obj thuộc lớp C thì nếu gọi đến phương thức Xuat (obj.Xuat()) thì
phương thức Xuat của lớp nào sẽ được gọi: => Lỗi không thể xác định được.
27. Cho lớp A, B, C trong đó lớp C kế thừa lớp A,B. Trong lớp A, B đều có phương thức Xuat,
lớp C không có phương thức Xuất, khi khai báo đối tượng obj thuộc lớp C thì nếu gọi đến
phương thức Xuat (obj.Xuat()) thì khi biên dịch thấy xuất hiện lỗi, trường hợp xảy ra lỗi này
là do: Trùng tên giữa phương thức các lớp cha
28. Cho lớp B, C kế thừa lớp A; Lớp D kế thừa lớp B và C, khi đó đối tượng của lớp D không thể kế
thừa được thành phần của A vì vậy cần phải:Khai báo A là lớp cơ sở ảo đối với B và C.
29. Cho lớp B,C kế thừa lớp A; Lớp D kế thừa lớp B và C. Khi đó đối tượng của lớp D không thể kế
thừa được thành phần của A.Cần phải:Khai báo A là lớp cơ sở ảo đối với lớp B,C
30. Cho lớp Dathuc, để thực hiện khai báo sau mà không bị lỗi: Void main() {Dathuc D1,D2(D1);} Ta
cần xây dựng hàm tạo không đối và hàm tạo sao chép
31. Cho lớp Điểm trong hệ tọa độ xOy, các phương thức có thể có của lớp Điểm:dịch chuyển,thiết lập
tọa độ.
32. Cho lớp đường thẳng tạo bởi 2 điểm A, B. Quan hệ giữa lớp đường thẳng và lớp điểm
là: Đường thẳng là lớp bao của lớp điểm.
33. Cho lớp tam giác tạo bởi ba điểm A, B, C. Quan hệ giữa lớp tam giác và lớp điểm là: Tam giác
là lớp bao của lớp điểm.
34. Chọn các phương án đúng cho mệnh đề “ Trong các phương thức của lớp dẫn xuất, có thể truy nhập
trực tiếp tới:” Đáp án: Cả (1) và (2)
35. Chọn các phương án đúng cho mệnh đề “ Trong các phương thức của lớp dẫn xuất, có thể
truy nhập trực tiếp tới:” Các thuộc tính trong chính phương thức đó (1); Các thuộc tính mới khai báo
trong lớp dẫn xuất (2)
36. Chọn câu đúng: Tại chương trình chính chỉ có thể truy cập đến thành phần public của lớp.
37. Chọn câu đúng: Ngôn ngữ C++,Java là ngôn ngữ lập trình hướng đối tượng.
38. Chọn câu sai: Ngôn ngữ Pascal là ngôn ngữ lập trình hướng đối tượng
39. Chọn phát biểu đúng trong các phát biểu sau: Một lớp (sau khi định nghĩa) có thể xem như
một kiểu đối tượng và có thể dùng để khai báo các biến, mảng đối tượng.
40. Chọn phát biểu đúng về phương thức: Liên quan tới những thứ mà đối tượng có thể làm. Một
phương thức đáp ứng một chức năng tác động lên dữ liệu của đối tượng.
41. Chọn phương án tương ứng với phát biểu sai: Hàm destructor có thể là một hàm ảo
42. Chồng hàm: khả năng các hàm có thể trùng tên nhau nưng khác nhau về: kiểu dữ liệu trả về hoặc
kiểu dữ liệu của tham số hoặc số lượng tham số truyền vào.
43. class A là bạn của class B, class B là bạn của class C thì: class B có thể truy xuất đến các
thành viên private của class C
44. Class A là bạn của class B, class B là bạn của class C thì: Đáp án : class B có thể truy xuất đến
các thành viên private của class C
D
45. Đa hình xảy ra khi các phương thức của lớp con: Duy trì cùng kiểu trả về và các tham số như lớp
cha, nhưng cách thực hiện khác nhau.
46. Đặc điểm cơ bản của lập trình hướng đối tượng thể hiện ở: Tính đóng gói, tính kế thừa, tính đa
hình, tính trừu tượng.
47. Đặc điểm cơ bản của lập trình hướng đối tượng thể hiện ở: tính đóng gói, tish đa hình, tính trừu
tượng.
48. Đặc điểm cơ bản của lập trình hướng đối tượng thể hiện ở: tính đóng gói, đa hình, kế thừa, trừa
tượng.
49. DANH SÁCH THÍ SINH xây dựng 2 lớp đối tượng: lớp đối tượng thí sinh và đối tượng danh sách
thí sinh theo phòng. Thuộc tính của lớp Danh sách thí sinh có thể là : số thí sinh, mảng các thí sinh.
50. Để đưa ĐỐI TƯỢNG trong thực tế vào máy tính ta cần chú trọng đến tính: Trừu tượng dữ liệu và
trừu tượng chức năng.
51. Để khai báo thành viên tĩnh trong C++ và Java đều dùng từ khóa static. Sự nhận định các phương
thức tĩnh trong C++ và trong Java là: Đáp án: Cả (1) và (2)
52. Để quản lý các phương tiên giao thông đường bộ người ta xây dựng hệ thống các lớp đối tượng
gồm: lớp xe đạp, lớp xe máy, lớp ô tô con, lớp xe tải. Sau quá trình phân tích nhận thấy rằng các
lớp đối tượng trên cùng có các đặc điểm như sau: Tải_trọng, loại_động_cơ, Biển_số và đều di
chuyển từ điểm a đến điểm b. Người ta xây dựng lớp PT_Giao_Thông làm: Lớp cơ sở cho các lớp
đối tượng trên
53. Để quản lý các phương tiên giao thông đường bộ người ta xây dựng hệ thống các lớp đối tượng
gồm: lớp xe đạp, lớp xe máy, lớp ô tô con, lớp xe tải. Sau quá trình phân tích nhận thấy rằng các
lớp đối tượng trên cùng có các đặc điểm như sau: Tải_trọng, loại_động_cơ, Biển_số và đều di
chuyển từ điểm a đến điểm b. Người ta xây dựng lớp PT_Giao_Thông làm lớp cơ sở cho các lớp
đối tượng trên và lớp này gồm các thuộc tính là: Tải_trọng, Loại_động_cơ, Biến_số
54. Để quản lý các phương tiên giao thông đường bộ người ta xây dựng hệ thống các lớp đối tượng
gồm: lớp xe đạp, lớp xe máy, lớp ô tô con, lớp xe tải. Sau quá trình phân tích nhận thấy rằng các
lớp đối tượng trên cùng có các đặc điểm như sau: Tải_trọng, loại_động_cơ, Biển_số và đều di
chuyển từ điểm a đến điểm b. Người ta xây dựng lớp PT_Giao_Thông làm lớp cơ sở cho các lớp
đối tượng trên và lớp này gồm các phương thức là: Di_chuyển
55. Để tính khoảng cách hai điểm trong lớp điểm ta xây dựng phương thức tính khoảng cách hai điểm
theo cú pháp sau: float KC2D(Diem D); Lời gọi đến phương thức để tính khoảng cách hai điểm là:
cout<<D1.KC2D(D2);
56. Điều này thể hiện tính: Đa hình
57. Đoạn khai báo thuộc tính của lớp đa thức( với hệ số là một mảng số thực) là: Class
Dathuc{private:int bac;float *hs;};
58. Đối tượng là: Một thực thể cụ thể trong thế giới thực
59. Đối tượng: một thực thể cụ thể trong thế giới thực.
H
60. Hàm bạn là: Là hàm của lớp được phép truy cập đến thành phần private của lớp.
61. Hàm hủy có : Một loại.
62. Hàm HỦY dùng để hủy(giải phóng) bộ nhớ cho các thành phần thuộc tính bên trong lớp.
63. Hàm huỷ là: Hàm huỷ dùng để huỷ (giải phóng) bộ nhớ cho các thành phần thuộc tính bên trong
lớp.
64. Hàm HỦY trong ngôn ngữ C++ có cú pháp: ~Tên lớp{//Nội dung}.
65. Hàm mà bất kỳ lớp nào cũng có là: Contructor
66. Hàm SAO CHÉP: là hàm thành viên của lớp, dùng để tạo 1 đối tượng theo đối tượng đã có, Nếu
không xây dựng hàm tạo sao chép chương trình sẽ tự sinh hàm tạo sao chép.
67. HÀM TẠO là hàm thành viên của lớp dùng để khởi tạo bộ nhớ và giá trị ban đầu cho các thuộc tính
trong lớp.
68. Hàm tạo là: Hàm tạo là hàm thành viên của lớp dùng để khởi tạo bộ nhớ và giá trị ban đầu cho các
thuộc tính trong lớp.
69. Hàm tạo trong ngôn ngữ C++:Có tên trufngg với tên lớp, xây dựng bên trong hoặc bên ngoài lớp,
có đối hoặc không đối,tự động được gọi tới khi khai báo đối tượng của lớp.
70. Hàm thành viên (phương thức) của lớp là: Tất cả các hàm (hàm trả về giá trị và không trả về giá
trị) được khai báo bên trong lớp, xây dựng bên trong hay bên ngoài lớp thể hiện các hành vi của đối
tượng.
71. Hàm thành viên (phương thức) của lớp là:tất cả các hàm (trả về giá trị hoặc không trả về giá trị),
được khai báo bên trong lớp, xây dựng bên trong hay bên ngoài lớp thể hiện các hành vi của đối
tượng.
72. Hàm thành viên của lớp khác hàm thông thường: hàm thành viên của lớp phải được khai báo bên
trong lớp và được gọi nhờ tên đối tượng hay tên lớp còn hàm thông thường thì không.
73. Hàm thành viên(PHƯƠNG THỨC) của lớp: tất cả các hàm(hàm trả về giá trị và không trả về giá
trị được khai báo bên trong lớp, xây dựng bên trong hay bên ngoài lớp thể hiện các hành vi của đối
tượng.
74. Hãy cho biết thành phần thuộc tính của lớp đa thức xây dựng bằng mảng: Bậc,mảng hệ số.
75. Hãy chọn câu đúng: Ngôn ngữ lập trình pascal,c là ngôn ngữ lập trình cấu trúc
76. Hãy chọn phát biểu sai: Có hai loại hàm huỷ có đối và không đối.Khai báo các phương thức trong
lớp cơ sở trừu tượng phải: Tất cả đều đúng (Các phương thức không được định nghĩa nội dung
; Là phương thức ảo thuần túy ;Với c++ có cú pháp : virtual void[kiểu_dữ _liệu]
tên_phương_thức(tham đối)=0;)
K
77. Khai báo phương thức ảo: Giống khai báo phương thức thường nhưng đứng đầu là từ khoá virtual;
78. Khi đưa các lớp thực tế vào quản lý trong máy tính ta nhận thấy mỗi đối tượng thực tế có vô
số thuộc tính nhưng với mỗi bài toán cụ thể ta chỉ xác định các lớp chỉ gồm một số thuộc tính
nhất định. Cách thức đó gọi là: Sự trừu tượng hóa dữ liệu.
79. Khi khai báo các thành phần thuộc tính của lớp trong C# đầu mỗi câu lệnh khai báo ta thường khai
báo: Phạm vi của thuộc tính là private hau public hya protected.
80. Khi khai báo lớp A là bạn của lớp B thì: Chưa chăc lớp B đã là bạn của lớp A.
81. Khi khai báo lớp trong các ngôn ngữ lập trình hướng đối tượng phải sử dụng từ khóa : class
82. Khi khai báo lớp trong các ngôn ngữ lập trình hướng đối tượng phải sử dụng từ khóa: CLASS
83. Khi khai báo thành phần thuộc tính và phương thức của lớp, nếu không khai báo từ khóa
PRIVATE,PROTECTED,PUBLIC thí mặc định sẽ là:PRIVATE.
84. Khi khai báo thành phần thuộc tính và phương thức của lớp, nếu không khai báo từ khóa public,
private và protected thì mặc định sẽ là private.
85. Khi khai báo và xây dựng 1 lớp ta cần xác định rõ thành phần: Thuộc tính (dữ liệu) và phương
thức(hành vi) của lớp.
86. Khi khai báo và xây dựng một lớp ta cần phải xác định rõ thành phần: Thuộc tính (dữ liệu) và
phương thức (hành vi) của lớp
87. Khi khai báo và xây dựng một lớp ta phải xác định rõ thành phần: thuộc tính(dữ liệu) và phương
thức ( hành vi)của lớp
88. Khi khai báo và xây dựng thành công các lớp đối tượng, để truy cập vào thành phần của lớp t phải:
truy cập thông qua tên lớp hay tên đối tượng của lớp.
89. Khi khai báo và xây dựng thành công lớp đối tượng, để truy cập vào thành phần của lớp ta
phải: Truy cập thông qua tên lớp hay tên đối tượng của lớp.
90. Khi khai báo và xây dựng thành công lớp đối tượng, để truy cập vào thành phần của lớp ta phải:
truy cập thông qua tên lớp hoặc tên đối tượng của lớp.
91. Khi khai báo, xây dựng lớp các phương thức thường được khai báo trong phạm vi PUBLIC để:
tương tác với các lớp hay môi trường bên ngoài.
92. Khi khai báo, xây dựng lớp các thành phần được đặt trong phạm vi Protected nhằm mục đích:
Cho phép kế thừa nhưng không cho phép tương tác trực tiếp từ bên ngoài lớp.
93. Khi khai báo, xây dựng lớp các thành phần được đặt trong phạm vi PROTECTED nhằm mục đích:
cho phép kế thừa nhưng không cho phép tương tác trực tiếp từ bên ngoài lớp.
94. Khi khai báo, xây dựng lớp các thuộc tính của thường được khai báo trong phạm vi Private, điều
này thể hiện tính: BAO GÓI
95. Khi nạp chồng các hàm thì điều kiện khác nhau giữa các hàm sẽ là: Kiểu dữ liệu trả về của
hàm or Kiểu dữ liệu của tham số truyền vào của hàm or Số lượng tham số truyền vào các hàm
96. Khi xây dựng lớp đối tượng , các thuộc tính dữ liệu thông thường được khai báo trong phạm vi :
PRIVATE
97. Khi xây dựng lớp đối tượng công việc cần làm: Xác định thành phần thuộc tính và phương thức của
lớp đó, xác định kiểu dữ liệu của(thuộc tính, kiểu trả về của phương thức), Xác định thành phần
private, public, protected là gì.
98. Khi xây dựng lớp đối tượng, công việc cần làm là: Xác định thành phần thuộc tính và phương
thức của lớp đó + Xác định thành phần private, public, protected là gì. + Xác định kiểu dữ liệu của
thuộc tính, kiểu trả về của phương thức
99. Khi xây dựng lớp trong C++, nếu trong lớp có thành phần thuộc tính là kiểu con trỏ hay tham chiếu
thì bắt buộc phải: Xây dựng hàm hủy
100. Khi xây dựng nạp chồng các hàm thì điều kiện khác nhau giữa các hàm là: kiểu dữ liệu trả
về của hàm hoặc kiểu dữ liệu tham số truyền vào của hàm hoặc số lượng tham số truyền vào
của hàm là khác nhau. Điều kiện này chỉ áp dụng khi: Các hàm cùng được xây dựng trong 1
chương trình or Các hàm này cùng được xây dựng trong một lớp Đáp án: (1) hoặc (2)
L
101. Lập trình hướng đối tượng là phương pháp đặt trọng tâm vào các đối tượng, nó không cho phép dữ
liệu chuyển động một cách tự do trong hệ thống, dữ liệu được gắn với các hàm thành phần.
102. Lập trình hướng đối tượng là: Lập trình hướng đối tượng là phương pháp đặt trọng tâm vào các
đối tượng, nó không cho phép dữ liệu chuyển động một cách tự do trong hệ thống; dữ liệu được gắn
với các hàm thành phần.
103. Lập trình hướng đối tượng là: phương pháp đặt trọng tâm vào các đối tượng, nó không cho phép dữ
liệu chuyển động một cách tự do trong hệ thống, dữ liệu được gắn với các hàm thành phần.
104. Lập trình hướng đối tượng: dữ liệu hay các hàm mới có thể được thêm vào khi cần,các chương trình
được chia thành các đối tượng, dữ liệu được che giấu và không được truy xuất từ các hàm bên ngoài,
nhấn mạnh trên dữ liệu hơn là thủ tục.
105. Lời gọi hàm tạo: Không cần phải gọi tới hàm tạo vì ngay khi khai báo đối tượng sẽ tự gọi tới hàm
tạo
106. Lời gọi hàm thành viên của lớp là: <Tên đối tượng>.<Tên hàm thành viên>
107. Lời gọi phương thức ảo là: Gọi như phương thức thông thường.
108. Lời gọi phương thức ảo: Gọi như phương thức thông thường.
109. Lời gọi tới hàm thành viên của lớp : TÊN ĐỐI TƯỢNG.TÊN HÀM THÀNH VIÊN
110. Lớp Bạn của một lớp là: Là lớp có thể truy cập đến thành phần private, protected và public của
lớp mà nó làm bạn.
111. LỚP BAO là lớp: có thành phần thuộc tính là lớp đối tượng của lớp khác.
112. Lớp cơ sở trừu tượng Là lớp làm cơ sở cho các lớp khác và không được dẫn xuất từ bất kì lớp nào.
113. Lớp cơ sở trừu tượng là: Là lớp làm cơ sở cho các lớp khác và không được dẫn xuất từ bất kì lớp
nào.
114. Lớp đối tượng là một thiết kế hay mẫu cho các đối tượng cùng kiểu
115. Lớp đối tượng là: Một thiết kế hay mẫu cho các đối tượng cùng kiểu
M
116. Mỗi đối tượng sau khi khai báo sẽ được cấp phát một vùng nhớ riêng để chứa các thuộc tính của
chúng
117. Mối quan hệ giua lớp Môn học và lớp sinh viên: lớp môn học là lớp đối tượng thành phần của lớp
sinh viên
118. Mối quan hệ giữa lớp Người và lớp SinhViên: Lớp người là lớp cơ sở cho lớp Sinhvien.
119. Một lớp có thể có bao nhiêu lớp cơ sở ảo? Nhiều
120. Một lớp có thể có tối đa: Vô số phương thức ảo.
121. Một lớp có thể có tối đa: Vô số phương thức ảo.
122. Một lớp có thể: là lớp bạn của vô số lớp, là lớp dẫn xuất của vô số lớp, là lớp cơ sở của vô số lớp.
123. Một người cần xây dựng lớp Thời gian (Timer) trong máy tính cần hiển thị thông tin như sau:
giờ:phút:giây. Vậy các thuộc tính cần xây dựng cho lớp Timer là: Giờ, Phút, Giây.
124. Muốn lập trình hướng đối tượng bạn cần phải phân tích chương trình bài toán thành các: Đối tượng
từ đó xây dựng các lớp đối tượng tương ứng.
125. Muốn lập trình hướng đối tượng, bạn cần phải phân tích chương trình, bài toàn thành các:
Các đối tượng từ đó xây dựng các lớp đối tượng tương ứng.
N
126. Người ta cần quản lý cần quản lý các thông tin về công dân để xác định xem hai công dân bất kỳ có
thể kết hôn được với nhau hay không. Biết rằng điều kiện kết hôn là: là công dân từ 18 tuổi trở nên,
có tình trạng kết hôn là độc thân, hai công dân kết hôn không cùng giới tính, đồng thời phải lưu lại
các thông tin của người kết hôn. Các lớp cần thuộc tính cần xây dựng cho hai lớp đối tượng của bài
toán trên là: Đáp án : Lớp đối tượng cần xây dựng là Lớp Công dân; Các thuộc tính là : họ và
tên, ngày sinh, giới tính, tình trạng hôn nhân;
127. Người ta cần quản lý cần quản lý các thông tin về công dân để xác định xem hai công dân
bất kỳ có thể kết hôn được với nhau hay không. Biết rằng điều kiện kết hôn là: là công dân từ 18
tuổi trở nên, có tình trạng kết hôn là độc thân, hai công dân kết hôn không cùng giới tính, đồng
thời phải lưu lại các thông tin của người kết hôn. Các lớp cần thuộc tính cần xây dựng cho hai lớp
đối tượng của bài toán trên là: Lớp đối tượng cần xây dựng là Lớp Công dân; Các thuộc tính là: họ
và tên, ngày sinh, giới tính, tình trạng hôn nhân;
128. Người ta cần quản lý thông tin của công dân để triệu gọi nhập ngũ khi đến thời điểm, biết
rằng điều kiện nhập ngũ là nam giới từ 18 tuổi trở lên không đang theo học tại bất kỳ trường
đại học, cao đẳng nào. Phân tích đầu bài cho thấy, cần phải xây dựng: Lớp công dân
O
129. OOP là viết tắt của: object oriented Programming
P
130. Phân tích mối quan hệ giữa lớp điểm và lớp hình tròn ta có thể xác định: Lớp hình tròn kế thừa lớp
điểm.
131. Phương pháp lập trình cấu trúc: phương pháo lập trình với việc cấu trúc hóa dữ liệu và cấu trúc hóa
phương trình để tránh các lệnh nhảy.
132. Phương pháp lập trình Module: phương pháp lập trình được cấu trúc nghiêm ngặt với cấu trúc dạng
module
133. Phương pháp lập trình tuần tự: phương pháp lập trình với cách liệt kê các lệnh kế tiếp
134. Phương pháp trừu tượng hóa : phương pháp chỉ quan tâm đến những chi tiết cần thiết(chi tiết chính)
và bỏ qua những chi tiết không cần thiết.
135. Phương thức cơ bản của lớp xe hơi: Khởi động , di chuyển, rẻ phải, rẻ trái, lùi sau.
136. Phương thức cơ bản của máy giặt: Cấp nước, đảo trộn, xả nước, vắt khô.
137. Phương thức liên quan tới những thứ mà đối tượng có thể làm. Một phương thức đáp ứng 1 chức
năng tác động lên dữ liệu của đối tượng.
S
138. Sau khi khai báo và xây dựng thành công lớp đối tượng sinh viên, khi đó lớp đối tượng sinh viên
còn được gọi là: Kiểu dữ liệu trừu tượng.
139. Sự đóng gói: Encapsulation
140. Sự thừa kế:Inheritance.
141. Sự trừu tượng:Abtraction
T
142. Ta khai báo lớp cơ sở ảo khi nào: Khi có sự trùng lặp lớp kế thừa trong đa kế thừa và kế thừa
nhiều mức.
143. Tại chương trình chính chỉ có thể: truy cập đến thành phần public.
144. Thành phần private của lớp là thành phần : không cho phép truy xuất từ bên ngoài của lớp chỉ có
các phương thức bên trong lớp mới có thể truy xuất được.
145. Thành phần PRIVATE của lớp là thành phần không cho phép truy xuất từ bên ngoài của lớp chỉ có
các phương thức bên trong lớp mới có thể truy xuất được.
146. Thành phần private của lớp là thành phần: Không cho phép truy xuất từ bên ngoài của lớp chỉ
có các phương thức bên trong lớp mới có thể truy xuất được.
147. Thành phần protected của lớp là thành phần: Không cho phép truy xuất từ bên ngoài của lớp
nhưng cho phép lớp kế thừa truy xuất tới.
148. Thành phần PROTECTED của lớp là thành phần: Không cho phép truy xuất từ bên ngoài của lớp
nhưng cho phép lớp kế thừa truy xuất tới.
149. Thành phần protected của lớp thành phần là: không cho phép truy xuất từ lớp bên ngoài của lớp
nhưng cho phép lớp kế thừa truy xuất tới.
150. Thành phần PUBLIC của lớp là thành phần : cho phép truy xuất từ bên trong và ngoài lớp và cho
phép kế thừa.
151. Thành phần public của lớp là thành phần: Cho phép truy xuất từ bên trong và ngoài lớp và cho
phép kế thừa.
152. Thành viên tĩnh của lớp là: (Cả 3 đều đúng. Là thành viên của lớp được khai báo với từ khóa static
ở trước. Là thành viên dùng chung cho tất cả các đối tượng của lớp, không của riêng đối tượng nào.
Được cấp phát bộ nhớ ngay cả khi lớp chưa có đối tượng cụ thể nào.)
153. Thành viên tĩnh của lớp là: Là thành viên của lớp được khai báo với từ khóa static ở trước +
Được cấp phát bộ nhớ ngay cả khi lớp chưa có đối tượng cụ thể nào + Là thành viên dùng chung
cho tất cả các đối tượng của lớp, không của riêng đối tượng nào.
154. Thông thường khi xây dựng lớp trong C#, với mỗi khai báo thuộc tính của lớp ta đều xây
dựng thêm hai phương thức set và get dùng để: Thiết lập và lấy giá trị của thuộc tính đó.
155. Thong thường tỏng khi xây dựng lớp: Hai phương thức SET va GET dùng để: thiết lập và lấy giá
trị của thuộc tính đó.
156. Thuộc tính của lớp có thể có kiểu của chính lớp đó.
157. Thuộc tính của lớp là: dữ liệu trình bày các đặc điểm của đối tượng
158. Thuộc tính của lớp người: chân , tay, mắt, mũi, tên , ngày sinh.
159. Thuộc tính của lớp sinh viên: Họ và tên, ngày sinh, giới tính,địa chỉ, số CMND,quê quán, lớp
học,khóa học, khoa quản lý.
160. Thuộc tính của lớp thí sinh: SBD, Họ và tên, ngày sinh, giơi tính, phòng thi, giờ thi.
161. Thuộc tính của lớp: là dữ liệu trình bày các đặc điểm của đối tượng.
162. Tính bao đóng (đóng gói) - Encapsulations là: Cơ chế ràng buộc dữ liệu và thao tác trên dữ liệu
đó thành một thể thống nhất, che giấu và tránh được các tác động từ bên ngoài. Thể thống nhất này
gọi là đối tượng.
163. Tính bao đóng(tính đóng gói)-Encapsulation: Cơ chế ràng buộc dữ liệu và thao tác dữ liệu trên đó
thành 1 thể thống nhất, che dấu và tránh được các tác động từ bên ngoài.Thể thống nhất này được
gọi là đối tượng.
164. Tính bao gói: : Encapsulation- Cơ chế ràng buộc dữ liệu và thao tác trên dư liệu đó thành 1 thể
thống nhất, tránh được các tác động bất ngờ từ bên ngoài.Thể thống nhất này là đối tượng.
165. Tính chất của kế thừa dạng Private là: Thành phần protected, public của lớp cha tương ứng trở
thành thành phần private của lớp con.
166. Tính chất kế thừa chỉ ra rằng khi lớp A kế thừa lớp B thì: Lớp A sẽ có toàn bộ những thành phần
thuộc PROTECTED và PUBLIC của lớp B.
167. Tính chất kế thừa dạng Protected là: Thành phần protected, public của lớp cha tương ứng trở
thành thành phần protected của lớp con.
168. Tính chất kế thừa dạng Protected là: Thành phần protected, public của lớp cha tương ứng trở thành
thành phần protected của lớp con.
169. Tính chất kế thừa dạng Public là : Thành phần protected của lớp cha tương ứng trở thành thành
phần protected của lớp con và thành phần public của lớp cha tương ứng trở thành public của lớp
con.
170. Tính chất kế thừa dạng Public là: Thành phần protected của lớp cha tương ứng trở thành thành phần
protected của lớp con và thành phần public của lớp cha tương ứng trở thành public của lớp con.
171. Tính đa hình là khả năng một thông điệp có thể thay đổi cách thể hiện của nó theo lớp cụ thể của
đối tượng được nhận thông điệp.(Ex: Các lớp điểm, hình tròn vuông hcn…đều có phương thức vẽ)
172. Tính đa hình là: Khả năng một thông điệp có thể thay đổi cách thể hiện của nó theo lớp cụ thể của
đối tượng được nhận thông điệp.
173. Tính đa hình: polymorohism
174. Tính kế thừa:khả năng xây dựng các lớp mới từ các lớp cũ, lớp mới được gọi là lớp dẫn xuất, lớp
cũ được gọi là lớp cơ sở.
175. Trong 1 chương trình có thể xây dựng tối đa bao nhiêu lớp: VÔ SỐ tùy theo bộ nhớ.
176. Trong các phương án sau, phương án nào mô tả đối tượng: Đồng hồ - Máy tính - Xe đạp - Quả
cam.
177. Trong các ví dụ sau, ví dụ nào chứng tỏ tính kế thừa? Tất cả đều đúng.
178. Trong đa kế thừa có thể kế thừa tối đa: Vố số lớp tùy theo bộ nhớ.
179. Trong kế thừa có thể kế thừa tối đa: Vố số mức tùy theo bộ nhớ.
180. Trong kế thừa nhiều mức có cho phép: Cho phép trùng tên cả phương thức lẫn thuộc tính.
181. Trong kế thừa, có thể: Kế thừa tất cả các phương thức thuộc tính khai báo trong phần protected,
public và không kế thừa hàm tạo, hàm huỷ.
182. Trong kế thừa, lớp dẫn xuất có thể kế thừa các phương thức và thuộc tính của lớp cơ sở nhưng
không thể kế thừa: Hàm tạo, toán tử gán
183. Trong kế thừa, lớp dẫn xuất có thể kế thừa các phương thức và thuộc tính của lớp cơ sở nhưng
không: Kế thừa hàm tạo, toán tử gán.
184. Trong kế thừa. Lớp cha có thuật ngữ tiếng Anh là:. Base Class.
185. Trong kế thừa. Lớp mới có thuật ngữ tiếng Anh là: Derived Class.
186. Trong lập trình hướng đối tượng khả năng các hàm có thể trùng tên nhau gọi là:SỰ CHỒNG HÀM.
187. Trong lơp kế thừa, lớp cha có thuật ngữ tiếng anh là: Base Class
188. Trong lơp kế thừa, lớp mới có thuật ngữ tiếng anh là:Derivede Class
189. Trong lớp Phân số khai báo: Phanso(int ts=0,int ms=1): Hàm tạo có tham số mặc định của lớp
Phanso
190. Trong một chương trình có thể xây dựng tối đa bao nhiêu lớp: Nhiều lớp tuỳ theo bộ nhớ
191. Trong một lớp có thể: Duy nhất một hàm hủy.
192. Trong một lớp có thể: Nhiều hàm dựng (tạo), các hàm dựng khác nhau về tham đối.
193. Trong một lớp có thể:Duy nhất một hàm hủy.
194. Trong phương án sau, phương án nào mô tả tính đa hình:➔ Các lớp Điểm, Hình tròn, Hình vuông,
Hình chữ nhật… đều có phương thức Vẽ.
195. Trường đại học BUH in giấy báo nhập học vào mỗi kì tuyển sinh, uel cũng in giấy báo nhập
học,…tuy nhiên 2 giấy báo nhập học này lại có cấu trúc nội dung, hình thức khác nhau. Ví dụ này
chứng tỏ tính: Đa hình
196. Trường Đại học Ngân hàng In giấy báo nhập học vào mỗi kỳ tuyển sinh, Trường đại học Kinh tế
TPHCM cũng In giấy báo nhập học, trường đại học Bách Khoa TPHCM cũng in Giấy báo nhập
học, tuy nhiên 3 giấy báo nhập học này lại có thể có cấu trúc, nội dung, hình thức khác nhau, điều
này thể hiện tính: Đa hình
197. Từ khoá nào sau đây được dùng khi lớp con muốn cài đặt lại phương thức được thừa kế từ lớp cha
: new
V
198. Vào mỗi kì thi người ta lập ra danh sách thí sinh dự thi dựa theo danh sách sinh viên đủ điều kiện
dự thi của mỗi môn học, để thuận tiện xử lí người ta xây dựng lớp Thí sinh dựa trên lớp sinh viên
với điều kiện dự thi các môn học. Người ta phân tích thấy lớp thí sinh là trường hợp đặc biệt của
lớp sinh viên vì vậy khi xây dựng người ta xây dựng: Lớp thí sinh kế thừa lớp Sinh viên.
199. Vào mỗi kỳ thi người ta cần lập ra danh thí sinh dự thi dựa theo danh sách sinh viên đủ điều
kiện dự thi của mỗi môn học, để thuận tiện xử lý người ta xây dựng lớp Thí sinh dựa trên lớp
sinh viên với điều kiện là đủ điều kiện dự thi các môn học. Mối quan hệ giữa lớp Sinh viên và
lớp thí sinh là: Lớp Thí sinh là trường hợp đặc biệt hóa của lớp Sinh viên
200. Ví dụ thể hiện sự kế thừa: Lớp điểm và lớp điểm màu, Lớp Điểm và Hình tròn, Lớp oto và lớp xe,
Lớp người và Giáo Viên.
X
201. Xây dựng hàm tạo sao chép của lớp Diem trong C++ khai báo theo cú pháp sau: Diem(const Diem
&D);
202. Xây dựng lớp điểm trong hệ tọa độ Oxyz các thuộc tính của lớp là: tung độ, hoành độ, cao độ.
203. Xây dựng lớp hình chữ nhật tạo bởi hai cạnh a, b. Để khai báo hàm tạo với tham số mặc định
ta khai báo: Hinhchunhat(float a=1, float b=1);
204. Xây dựng lớp Hinh_hoc là lớp cơ sở cho các lớp Hinh_vuong, Hinh_tron, Hinh_cn, Hinh_tamgiac.
Nhận thấy các lớp này đểu có phương phương thức tính D_Tich(diện tích). Tuy nhiên cách tính
diện tích của các phương thức D_Tich ứng với các đối tượng của các lớp dẫn xuất là khác nhau.
Điều này thể hiện tính: Đáp án: Đa hình
205. Xây dựng lớp trong C#, thông thương với mỗi khai báo thuộc tính của lớp ta đều xây dựng thêm
hai phương thức set và get dùng để: Thiết lập và lấy giá trị của thuộc tính đó.
206. Xem xét bài toán nhập vào danh sách sinh viên gồm n sinh viên với những thông tin: Họ và tên,
Ngày sinh, Giới tính, Địa chỉ, Lớp và hiển thị thông tin theo ngày sinh tăng dần. Các lớp đối tượng
cần xây dựng cho bài toán gồm: Đáp án : Lớp Sinh viên và lớp danh sách sinh viên
207. Xem xét bài toán nhập vào danh sách sinh viên gồm n sinh viên với những thông tin: Họ và tên,
Ngày sinh, Giới tính, Địa chỉ, Lớp và hiển thị thông tin theo ngày sinh tăng dần. Các lớp đối tượng
cần xây dựng cho bài toán gồm Lớp Sinh viên và lớp danh sách sinh viên. Các thuộc tính của lớp
danh sách sinh viên là: Đáp án : Số sinh viên (n), mảng đối tượng Sinh viên.
208. Xem xét bài toán nhập vào danh sách sinh viên gồm n sinh viên với những thông tin: Họ và tên,
Ngày sinh (dd/mm/yyyy), Giới tính, Địa chỉ, Lớp và hiển thị thông tin theo ngày sinh tăng dần. Nếu
bài toán yêu cầu xây dựng trong C++, các lớp đối tượng cần xây dựng cho bài toán gồm Lớp Sinh
viên và lớp danh sách sinh viên. Các thuộc tính của lớp danh sách sinh viên là: Đáp án : Ngày
tháng, Số sinh viên (n), mảng đối tượng Sinh viên.
209. Xem xét bài toán nhập vào danh sách sinh viên gồm n sinh viên với những thông tin: Họ
và tên, Ngày sinh, Giới tính, Địa chỉ, Lớp và hiển thị thông tin theo ngày sinh tăng dần. Các lớp
đối tượng cần xây dựng cho bài toán gồm: Lớp Sinh viên và lớp danh sách sinh viên
210. Xem xét bài toán nhập vào danh sách sinh viên gồm n sinh viên với những thông tin: Họ
và tên, Ngày sinh, Giới tính, Địa chỉ, Lớp và hiển thị thông tin theo ngày sinh tăng dần. Các lớp
đối tượng cần xây dựng cho bài toán gồm Lớp Sinh viên và lớp danh sách sinh viên. Các thuộc
tính của lớp danh sách sinh viên là: Số sinh viên (n), mảng đối tượng Sinh viên.
211. Xem xét bài toán nhập vào danh sách sinh viên gồm n sinh viên với những thông tin: Họ
và tên, Ngày sinh (dd/mm/yyyy), Giới tính, Địa chỉ, Lớp và hiển thị thông tin theo ngày sinh tăng
dần. Nếu bài toán yêu cầu xây dựng trong C++, các lớp đối tượng cần xây dựng cho bài toán gồm
Lớp Sinh viên và lớp danh sách sinh viên. Các thuộc tính của lớp danh sách sinh viên là: Ngày
tháng, Số sinh viên (n), mảng đối tượng Sinh viên.