Đề cương môn lập trình hướng đối tượng với Java
lượt xem 25
download
Hãy nêu khái niệm: lớp các đối tượng , đối tượng, lập trình hướng đối tượng trong ngôn ngữ lập trình hướng đối tượng Lớp là một khái niệm trìu tượng dùng để biểu diễn một tập các đối tượng, có một vài đặc điểm chung nào đó Nêu các quy tắc truyền tham số trong ngôn ngữ java trong java chỉ có duy nhất 1 cách truyền tham số là: truyền tham trị Không tồn tại truyền tham chiếu...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Đề cương môn lập trình hướng đối tượng với Java
- NHĐT Java-Nguyễn Thịnh Chiến-wWw.EbookSo1.Com Đây là đề cương môn lập trình hướng đối tượng với Java do thầy Nguyên-trường ĐH CNTT-TT Thái Nguyên đưa ra Trong bộ đề cương này có cả lý thuyết và bài tập cho các bạn ôn tập Chúc tập thể K8e thi thật tốt nhé Rảnh thì ghé thăm diễn đàn chia sẻ tài liệu học tập http://ebookso1.com ======================================================= Lý thuyết . ● Hãy nêu khái niệm: lớp các đối tượng , đối tượng, lập trình hướng đối tượng trong ngôn ngữ lập trình hướng đối tượng Lớp là một khái niệm trìu tượng dùng để biểu diễn một tập các đối tượng, có một vài đặc điểm chung nào đó ● Nêu các quy tắc truyền tham số trong ngôn ngữ java trong java chỉ có duy nhất 1 cách truyền tham số là: truyền tham trị Không tồn tại truyền tham chiếu - Truyền một biến nguyên: hi bạn chuyền một biến kiểu nguyên cho một phương thức thì java sẽ tạo ra một bản sao cho biến nguyên đó. Vì thế mọi thay đổi của biến trong phương thức đó đều không ảnh hưởng tới biến ban đầu - Truyền dữ liệu kiểu reference: Trước hết mình cùng phân tích một statement: MyClass a = new MyClass(); Khi thực hiện câu lệnh này, Java tạo ra một đối tượng trong bộ nhớ (không cần quan tâm nó nằm ở đâu) và trả về một giá trị tham chiếu đến đối tượng đó. Như vậy a không phải là một đối tượng mà chỉ là một reference tới đối tượng mà thôi. Mình cùng phân tích một statement tiếp theo: MyClass b = a; Mặc dù sau câu lệnh này mình có hai giá trị a, b khác nhau. Nhưng hai reference bằng nhau sẽ chỉ đến cùng một đối tượng nên hai giá trị a và b sẽ chỉ đến cùng một đối tượng trong bộ nhớ. Vì cùng chỉ đến một đối tượng duy nhất nên khi a thay đổi thì b sẽ bị ảnh hưởng và ngược lại. Chính vì điểm này nên khi gán một reference vào một phương thức thì bản copy của reference này sẽ gây thay đổi đến đối tượng thực trong bộ nhớ. Cơ chế của 1 và 2 là như nhau. Nhưng bạn cần tìm hiểu kỹ về hai loại data này để hiểu tốt hơn tại sao đối tượng bị thay đổi khi gán và một phương thức. Câu 1: ● Hãy nêu các khái niệm kế thừa, đa hình, trong lập trình hướng đối tượng. Kế thừa: Kế thừa là việc tạo ra một lớp từ một lớp đã biết. lớp mới được tạo ra thừa hưởng tất cả các thuộc tính và phương thức của lớp cũ
- NHĐT Java-Nguyễn Thịnh Chiến-wWw.EbookSo1.Com Khi muốn viết lại một phương thức đã có sẵn trong lớp cha ta phải nạp chồng phương thức đó (thực ra là viết một phương thức mới có cùng tên, kiểu giá trị trả về và tham số với phương thức đã có ở lớp cha) các dữ liệu có khai bai báo là protect, public , final thì lớp con có thể t hừ a kế - Đa hình Đa hình là việc gọi một trong nhiều phương thức có cùng tên và nằm trong cùng một lớp. Java sẽ dựa và kiểu trả về và tham số truyền vào để gọi phương thức cho phù hợp ● Anh chị hãy giải thích khái niệm bao bọc và che dấu thông tin trong lập trình hướng đối tượng. ● Hãy nêu các khái niệm đối tượng, lớp các đối tượng trong lập trình hướng đối tượng. ● Hãy nêu cấu trúc một tệp chương trình trong ngôn ngữ lập trình hướng đối tượng java. ● Anh(chị hãy nêu) cấu trúc, mục đích ý nghĩa try-catch-finally trong java và giải thích nguyên lý hoạt động của cấu trúc này. ● Hãy nêu các loại chương trình có thể phát triển trong java ● Hãy nêu các quy tắc chuyển đổi kiểu và ngữ cảnh phải sử dụng quy tắc chuyển đổi kiểu trong ngôn ngữ java . ● Hãy nêu khái niệm nạp chồng trong java. Lấy ví dụ minh họa ● Hãy nêu khái niệm viết đè trong java. Lấy ví dụ minh họa ● Hãy phân biệt hai khái niệm nạp chồng và viết đè trong java. Lấy ví dụ minh họa ● Định nghĩa ngoại lệ trong lập trình và cơ chế bắt và sử lý ngoại lệ trong ngôn ngữ java. ● Hãy nêu cấu trúc phân cấp xử lý ngoại lệ trong java ● Hãy nêu cách sử dụng hai mệnh để throw và throws trong ngôn ngữ java. Hãy nêu cấu trúc một tệp chương trình trong ngôn ngữ lập trình java. Anh(chị) hãy nêu mục đích, ý nghĩa của cấu trúc try-catch-finally trong java và giải thích nguyên lý hoạt động của cấu trúc này.
- NHĐT Java-Nguyễn Thịnh Chiến-wWw.EbookSo1.Com Hãy nêu các loại chương trình có thể phát triển với ngôn ngữ java. Hãy nêu các quy tắc chuyển đổi kiểu và ngữ cảnh phải sử dụng quy tắc chuyển đổi kiểu trong ngôn ngữ java . Hãy nêu khái niệm nạp chồng trong java. Lấy ví dụ minh họa Hãy nêu khái niệm viết đè trong java. Lấy ví dụ minh họa Hãy phân biệt hai khái niệm nạp chồng và viết đè trong java. Lấy ví dụ minh họa Trình bày cơ chế truyền tham số trong ngôn ngữ java. Định nghĩa ngoại lệ trong lập trình và cơ chế xử lý ngoại lệ trong ngôn ngữ java. Hãy nêu cách sử dụng hai mệnh để throw và throws trong ngôn ngữ java. Hãy xác định phạm vi truy nhập của các thành phần private, public trong lớp các đối tượng đối tượng. Hãy xác định phạm vi truy nhập của các thành phần mặc định, public trong lớp các đối tượng đối tượng. Hãy xác định phạm vi truy nhập của các thành phần protected, public trong lớp các đối tượng đối tượng. Hãy nêu ý nghĩa của việc quy định phạm vi truy nhập của các thành phần của lớp trong java. Hãy nêu cách sử dụng từ khóa this và super trong java. Nêu ý nghĩa của từ khóa final được sử dụng để khai báo với các thành phần dữ liệu và phương thức(hàm) trong định nghĩa lớp. Nêu khái niệm giao diện (interface) trong java. Phân biệt khái niệm giao diện (interface) và khái niệm lớp trìu tượng (abstract class) trong java. Nêu cách khai báo gói, cách sử dụng gói trong java. Cho ví dụ minh họa. Ý nghĩa của toán tử khởi tạo là gì? Có những loại toán tử khởi tạo nào? Lấy ví dụ minh họa. Hãy nêu cú pháp định nghĩa hàm(phương thức) và các phương pháp thực hiện các lời gọi hàm trong java. ● Câu 2: dạng cho đoạn mã hãy sửa các lỗi hoặc cho biết kết quả in ra màn hình Câu 1 Cho đoạn chương trình sau? Hãy sửa các lỗi (nếu có) để chương trình chạy được. Khi chạy chương trình cho ra kết quả như thế nào? Tại sao? class Rock { Rock() { System.out.println("Creating Rock"); } } public class Simple { public static Main(String[] args) {
- NHĐT Java-Nguyễn Thịnh Chiến-wWw.EbookSo1.Com for( i = 0; i < 10; i+2) { if (i % 2 != 0) continue; new rock(); } } } Câu 2: Cho đoạn chương trình sau? Hãy sửa các lỗi (nếu có) để chương trình chạy được. Khi chạy chương trình cho ra kết quả như thế nào? Tại sao? Static class Tree { int height; Tree() { System.out.println ("Planting a seedling"); height = 0; } Tree(int i) { System.out.println("create tree with height = ” +i+ ); height = i; } void info() { System.out.println("Tree is " + height + " feet tall"); } void info(String s) { System.out.println (s + "Tree is " + height + " feet tall"); } } public class Overloading { public void main(String[] args) { for(i = 0; i < 5; i++) { if ( i>2) break; Tree t = new Tree(i); t.info(); t.info("overloaded method"); } new Tree(); } } Câu 3 Dạng bài tập quản lý (chú ý mối quan hệ giữa các đối tượng là mối quan hệ kế thừa và kết tập(lớp này là dữ liệu tp của lớp khác) ) Không giới hạn nội dung đề cương bài tập(các đề cương bài tập dùng để tham khảo) Câu 1 Hãy xây dựng lớp DaGiac gồm có: Các thuộc tính + Số cạnh của đa giác + Mảng các số thực chứa kích thước các cạnh của đa giác Các phương thức: + Nhập vào giá trị cho các cạnh của đa giác + Tính chu vi của đa giác + Hiển thị giá trị các cạnh của đa giác. Xây dựng một ứng dụng Java để nhập vào một dãy gồm m tam giác và: + Hiển thị thông tin về tam giác có chu vi lớn nhất. + Hiển thị thông tin về tam giác có diện tích nhỏ nhất. Câu 2
- NHĐT Java-Nguyễn Thịnh Chiến-wWw.EbookSo1.Com Mỗi một điểm trong mặt phẳng được xác đinh duy nhất bởi hai giá trị nguyên là hoành độ và tung độ. Hãy xây dựng lớp Diem để biểu diễn các đối tượng điểm trong mặt phẳng và xây dựng phương thức sau: + Toán tử tạo lập + Phương thức in một đối tượng Diem + Tính khoảng cách giữa hai điểm ( ) Mỗi tam giác trong mặt phẳng được xác định bởi 3 điểm. Hãy xây dựng lớp TamGiac với 3 thuộc tính riêng là 3 đối tượng thuộc lớp Diem và các phương thức: + Xây dựng các toán tử tạo lập: TamGiac(); TamGiac(Diem d1, Diem d2, Diem d3); + Tính diện tích tam giác + Tính chu vi của tam giác Câu 3 Hãy xây dựng lớp Diem để biểu diễn các đối tượng điểm trong mặt phẳng và xây dựng phương thức sau: + Toán tử tạo lập + Phương thức in một đối tượng thuộc lớp Diem + Tính khoảng cách giữa hai điểm () Xây dựng lớp HinhTron chứa các đối tượng là các hình tròn với 2 thuộc tính là 1 đối tượng thuộc lớp Diem để xác định tâm của hình tròn, một giá trị nguyên để xác định bán kinh của hình tròn. Cài đặt các phương thức: + Các toán tử tạo lập: HinhTron(), HinhTron(Diem d, int bk) + Tính chu vi, diện tich hình tròn (; ) Câu 4 a.Thông tin về mỗi cá nhân bao gồm : Họ tên, giới tính, tuổi. Hãy xây dựng lớp Nguoi chứa các đối tượng là các cá nhân và xây dựng các phương thức: + Các toán tử tạo lập: Nguoi(); Nguoi(String, boolean, int); + Phương thức nhap() để nhập thông tin cho một cá nhân + Phương thức in() để in thông tin về một cá nhân Hãy xây dựng lớp CoQuan chứa thông tin về các cá nhân trong một đơn vị được dẫn xuất (kế thừa) từ lớp Nguoi và có thêm các thành phần: + Thuộc tính kiểu String xác định đơn vị công tác (bộ môn, phòng); thuộc tính kiểu double xác định hệ số lương. + Viết đè phương thức in() ở lớp Nguoi để in thông tin về một cá nhân trong CoQuan + Cài đặt phương thức tinhLuong(CoQuan) để tính lương cho mỗi cá nhân trong cơ quan theo công thức: Lương =hệ số lương x 450000 Câu 5 Thông tin về mỗi xe máy gồm: Số máy, số khung, giá thành, hãng sản xuất.
- NHĐT Java-Nguyễn Thịnh Chiến-wWw.EbookSo1.Com Xây dựng lớp XeMay có các phương thức sau: + Các toán tử tạo lập + Nhập vào thông tin của xe máy hiện thời + Hiển thị thông tin của một xe máy hiện thời. Xây dựng lớp QLXeMay cài đặt các phương thức thực hiện các công việc sau: + Nhập vào thông tin cho một danh sách gồm n xe máy. + iển thị thông tin về các xe máy có hãng sản xuất là “YAMAHA” + Sắp xếp các xe máy ở trên theo thứ tự giảm dần của giá thành Câu 6 Thông tin về mỗi khách hàng gồm: Mã số, họ tên, tuổi, địa chỉ, sổ điện thoại. Xây dựng lớp KhachHang có: + Các toán tử tạo lập + Phương thức nhập thông tin cho khách hàng hiện thời + Phương thức hiển thị thông tin của khách hàng hiện thời Xây dựng lớp QLKhachHang cài đặt các phương thức thực hiện các công việc sau: + Nhập vào thông tin cho một danh sách gồm n khách hàng (2 ≤ m ≤ 100) + Sắp xếp danh sách khách hàng theo thứ tự tăng dần của tuổi. + Hiển thị thông tin về những khách hàng có tuổi nhỏ nhất. Câu 7 Các thí sinh dự thi đại học bao gồm các thí sinh thi khối A, thí sinh thi khối B, thí sinh thi khối C + Các thí sinh cần quản lý các thuộc tính: Số báo danh, họ tên, địa chỉ, ưu tiên. + Thí sinh thi khối A thi các môn: Toán, lý, hoá + Thí sinh thi khối B thi các môn: Toán, Hoá, Sinh + Thí sinh thi khối C thi các môn: văn, Sử, Địa Xây dựng các lớp để quản lý các thí sinh sao cho sử dụng lại được nhiều nhất. Xây dựng lớp TuyenSinh cài đặt các phương thức thực hiện các nhiệm vụ sau: + Nhập thông tin về một danh sách các thí sinh dự thi + Hiển thị thông tin của các thí sinh thi khối A + Nhập vào số báo danh của một thí sinh, hãy cho biết thí sinh đó thi khối gì và hiển thị thông tin của thí sinh đó. Câu 8 Để quản lý các hộ dân trong một khu phố, người ta quản lý các thông tin như sau: Với mỗi hộ dân, có các thuộc tính: + Số thành viên trong hộ ( số người) + Số nhà của hộ dân đó ( Số nhà được gắn cho mỗi hộ dân) + Thông tin về mỗi cá nhân trong hộ gia đình.
- NHĐT Java-Nguyễn Thịnh Chiến-wWw.EbookSo1.Com Với mỗi cá nhân, người ta quản lý các thông tin như: họ và tên, tuổi, năm sinh, nghề nghiệp. Hãy xây dựng các lớp: NhanSu để quản lý thông tin về mỗi cá nhân; lớp HoDan để quản lý thông tin về các hộ gia đình. Viết các phương thức để nhập, hiển thị thông tin cho mỗi cá nhân. Cài đặt chương trình thực hiện các công việc sau: + Nhập vào một dãy gồm n hộ dân (n - nhập từ bàn phím). + Hiển thị ra màn hình thông tin về các hộ trong khu phố. Thông tin về mỗi nhân viên gồm: Mã số, họ tên, tuổi, hệ số lương, lương. Xây dựng lớp NhanVien có: + Các toán tử tạo lập + Phương thức nhập thông tin cho nhân viên hiện thời. + Phương thức tính lương cho nhân viên theo công thức sau: Lương = hệ số lương * 450000 + Phương thức hiển thị thông tin của nhân viên hiện thời Xây dựng lớp QLNhanVien cài đặt các phương thức thực hiện các công việc sau: + Nhập vào thông tin cho một danh sách gồm n nhân viên + Sắp xếp danh sách nhân viên theo thứ tự giảm dần của tổng lương. + Cho biết trong danh sách trên có bao nhiêu người có: Tuổi ≤ 25. Câu 9 Thông tin về mỗi cá nhân bao gồm : Họ tên, giới tính, tuổi. Hãy xây dựng lớp Nguoi mô tả các đối tượng của các cá nhân và xây dựng các phương thức: + Các toán tử tạo lập: Nguoi(); Nguoi(String ht, boolean gt, int t); + Phương thức nhapThongTin() để nhập thông tin cho một cá nhân + Phương thức inThongTin() để in thông tin về một cá nhân Hãy xây dựng lớp NhanSu chứa thông tin về các cá nhân trong một đơn vị được dẫn xuất (kế thừa) từ lớp Nguoi và có thêm các thành phần: + Thuộc tính kiểu String xác định đơn vị công tác (bộ môn, phòng); thuộc tính kiểu double xác định hệ số lương. + Viết đè phương thức nhapThongTin() , inThongTin () ở lớp Nguoi để nhập, in thông tin về một nhân sự + Cài đặt phương thức double tinhLuong() để tính lương cho mỗi cá nhân trong cơ quan theo công thức: Lương =hệ số lương x 830000
CÓ THỂ BẠN MUỐN DOWNLOAD
-
ĐỀ CƯƠNG CHI TIẾT MÔN HỌC KỸ THUẬT LẬP TRÌNH
98 p | 1100 | 382
-
Đề cương bài giảng Java cơ sở
193 p | 461 | 261
-
Giáo trình về LẬP TRÌNH NÂNG CAO
165 p | 206 | 80
-
ĐỀ CƯƠNG C#
84 p | 128 | 32
-
Đề cương thực hành: Lập trình hướng đối tượng và C++ (CT114)
6 p | 339 | 31
-
Đề cương ôn tập môn lập trình hướng đối tượng với C++
16 p | 144 | 29
-
Đề cương môn học Lập trình Java
28 p | 244 | 27
-
Đề cương môn học Phân tích thiết kế hướng đối tượng
14 p | 223 | 20
-
Thực tập Lập trình hướng đối tượng
8 p | 153 | 16
-
Đề cương lập trình .NET cơ bản Đề cương môn C Sharp & .NET (cơ bản) Giảng
2 p | 230 | 11
-
Bài giảng Kỹ thuật lập trình - TS. Vũ Hương Giang
8 p | 117 | 5
-
Bài giảng Lập trình hướng đối tượng: Chương 0 - Nguyễn Hữu Thể
4 p | 87 | 5
-
Đề cương chi tiết học phần Lập trình mạng (Network Programming)
10 p | 93 | 4
-
Bài giảng Phương pháp lập trình hướng đối tượng: Giới thiệu và ôn tập
20 p | 115 | 3
-
Bài giảng Phương pháp lập trình hướng đối tượng: Giới thiệu và ôn tập - Trần Phước Tuấn
20 p | 80 | 3
-
Bài giảng Lập trình hướng đối tượng: Hướng dẫn môn học - Trần Thị Anh Thi
3 p | 63 | 3
-
Đề cương chi tiết học phần Lập trình hướng đối tượng (Object Oriented Programming)
9 p | 52 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn