Tải bản đầy đủ (.ppt) (36 trang)

Ch1.Tong quan OOP pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (419.48 KB, 36 trang )

Nguyễn Đức Hiển – Bài giảng Lập trình Java
1
Java Programming

Giảng viên : Nguyễn Đức Hiển

Email :

Website :

Thời lượng

Lý thuyết : 2 tín chỉ (30 tiết)

Thực hành + thảo luận : 1 tín chỉ
Nguyễn Đức Hiển – Bài giảng Lập trình Java
2
Nội dung môn học

Tổng quan về lập trình hướng đối tượng (OOP)

Java cơ bản

Hướng đối tượng với Java

Ngoại lệ (Exception)

Các dòng nhập/xuất (I/O Stream)

Xử lý luồng (Threads)


Giao diện đồ họa (GUI)

Làm việc với cơ sở dữ liệu (JDBC)
Nguyễn Đức Hiển – Bài giảng Lập trình Java
3
Tài liệu tham khảo

Bài giảng Lập Trình Java.

Java – Phương Lan – NXB Lao Động Xã Hội - 2004.

Java Lập Trình Mạng – Nguyễn Phương Lan, Huỳnh
Đức Hải – NXB Giáo Dục.

Giáo trình Lập Trình Mạng Bằng Java – NXB Thống Kê -
2003.
Nguyễn Đức Hiển – Bài giảng Lập trình Java
4
Chương 1
Tổng quan lập trình
hướng đối tượng với java
(Overview Java Object-Oriented Programming)
Nguyễn Đức Hiển – Bài giảng Lập trình Java
5
Nội dung

Điểm qua về lập trình

Lập trình hướng đối tượng


Giới thiệu về Java

Cách chạy một chương trình Java
Nguyễn Đức Hiển – Bài giảng Lập trình Java
6
Lập trình truyền thống

Trong lập trình cấu trúc hay lập trình hướng thủ tục

Một bài toán được giải quyết bằng cách chia thành các bài
toán nhỏ và thực hiện thông qua các chương trình con.

Chương trình = Cấu trúc dữ liệu + Thuật giải

Ví dụ: bài toán quản lý sinh viên, xây dựng cấu trúc
Nguyễn Đức Hiển – Bài giảng Lập trình Java
7
Lập trình truyền thống

Bài toán quản lý giáo viên:
Nguyễn Đức Hiển – Bài giảng Lập trình Java
8
Lập trình truyền thống

Phương pháp lập trình này có một số hạn chế như:

Ngôn ngữ không phân chia rõ ràng giữa cấp cài đặt và cấp
sử dụng.

Sự trộn lẫn khiến chương trình khó đọc, khó sữa khi cấu

trúc dữ liệu thay đỗi.

Không có tính kế thừa
Nguyễn Đức Hiển – Bài giảng Lập trình Java
9
Lập trình hướng đối tượng (OOP) là gì ?

Bản chất của máy tính là xử lý dữ liệu

Vì vậy, sẽ hoàn toàn tự nhiên nếu chương trình được thiết
kế xoay quanh dữ liệu hơn là chức năng chương trình.

Dữ liệu và các thao tác trên dữ liệu (hành vi) được liên kết
với nhau  đối tượng (object)

OOP là phương pháp lập trình lấy đối tượng làm nền
tảng để xây dựng thuật giải, xây dựng chương trình.

Dữ liệu + Hành vi = Đối tượng

Đây là phương pháp lập trình mới, cho đến thời điểm
hiện nay chưa có phương pháp lập trình nào tốt hơn.
Nguyễn Đức Hiển – Bài giảng Lập trình Java
10
Các đặc điểm của OOP

Sự đóng gói (Encapsulation): là khả năng lưu giữ
riêng biệt dữ liệu và các phương thức tác động lên
dữ liệu.


Tính thừa kế (Inheritance): là khả năng xây dựng các
lớp mới (lớp dẫn xuất) dựa trên lớp đã có (lớp cơ sở)

Tính đa hình (Polymorphism): là khả năng cho phép
gửi cùng một thông điệp đến các đối tượng khác
nhau có chung đặc điểm.
Thể hiện qua khái niệm hàm ảo hay phương thức
trừu tượng.
Nguyễn Đức Hiển – Bài giảng Lập trình Java
11
Lớp và đối tượng

Lớp (class) thực chất là một kiểu dữ liệu được định
nghĩa trong chương trình.

Lớp là khuôn mẫu của đối tượng và mô tả cấu trúc
bên trong của những đối tượng này.

Ví dụ:
Nguyễn Đức Hiển – Bài giảng Lập trình Java
12
Đối tượng là gì ?

Đối tượng (object) là một thể hiện của lớp, một thực
thể đã được nạp vào bộ nhớ.

Một cách trừu tượng xem đối tượng là một “hộp
đen”.

Bên trong đối tượng


Các dữ liệu (fields)

Các phương thức (code)
Nguyễn Đức Hiển – Bài giảng Lập trình Java
13
Một số ngôn ngữ hỗ trợ OOP

SmallTalk

Object Pascal

Visual Basic

Delphi

C/C++

Java

PHP


Nguyễn Đức Hiển – Bài giảng Lập trình Java
14
Giới thiệu về Java

Một ngôn ngữ lập trình bậc cao do Jame Gosling và
các cộng sự ở Sun MicroSystem.


Độc lập với hệ điều hành và các hệ nền khác nhau

Máy ảo Java (JVM)

Cung cấp một môi trường họat động an toàn: chạy ở lớp
trên của hệ điều hành

Ngôn ngữ Lập trình Hướng Đối tượng (OOP)

Trong Java, mọi thứ là lớp (Class)

Không giống C++, hỗ trợ OOP được xây dựng dựa vào
mức cao của ngôn ngữ (C  C++). Trong Java, hỗ trợ
OOP là một thành phần cơ bản.
Nguyễn Đức Hiển – Bài giảng Lập trình Java
15
Các đặc điểm của Java

Nhiều lớp đã được định nghĩa!

Trong Java, trước khi bạn viết bất kỳ code nào, kiểm tra
xem chắc chắn rằng chưa có ai đã làm nó cho bạn!

Quản lý bộ nhớ động

Dọn rác tự động, không có sự rò rỉ bộ nhớ!

Không có con trỏ!

Kiểm soát lỗi được xây dựng trong ngôn ngữ (thông

qua các Ngoại lệ)

Đa luồng và đồng bộ hóa

Bảo mật: hệ thống miễn nhiễm virus nhờ kỹ thuật xác
minh mã hóa công khai bởi bộ thông dịch

Khả chuyển: “viết một lần chạy mọi nơi!!!”
Nguyễn Đức Hiển – Bài giảng Lập trình Java
16
Các loại ứng dụng Java

Desktop: Console, GUI

Web: Applet (client), JSP/Servlet (server)

Network: Socket

Distributed: RMI, Corba, EJB

Mobile: MIDlet
Nguyễn Đức Hiển – Bài giảng Lập trình Java
17
C++ vs Java

Sử dụng những con trỏ (Java không sử dụng - lớp
được truyền như tham chiếu)

Include file (Java sử dụng các gói)


Sử dụng những biến toàn cục (biến toàn cục có thể
dễ dàng được mô phỏng)

Nạp chồng toán tử (Java không sử dụng)

Templates (Java 5.0 mới có sự hỗ trợ cho điều này)

Đa thừa kế (Java sử dụng các giao tiếp)

Các phương thức hủy bỏ (Java không có)
Nguyễn Đức Hiển – Bài giảng Lập trình Java
18
Môi trường của Java
Java
Source
(*.java)
Java Compiler
(javac)
Java
Object
(*.class)
Java Virtual Machine
Mã đối tượng được xác minh
và nạp vào máy ảo Java
Computer Operating System
Trình thông dịch kiểm soát tất cả các
truyền thông với OS của máy tính thực
Java Interpreter
(java)
Chương trình

được xử lý bởi
trình thông dịch
Nguyễn Đức Hiển – Bài giảng Lập trình Java
19
JVM và Bytecode

Không giống các chương trình C++, các chương
trình Java không được biên dịch thành ngôn ngữ
máy.

Thay vào đó chúng được biên dịch thành mã của
Java (gọi là bytecode).

Sau đó, bytecode được thông dịch bởi máy ảo Java
(JVM)

Đây là điểm chính làm cho Java phổ biến. Sau khi đã
được biên dịch thành bytecode, nó có thể chạy trên
JVM được cài đặt trên bất kỳ hệ điều hành nào.

Với C++ và các ngôn ngữ biên dịch khác, các
chương trình phải được biên dịch lại cho mỗi kiến
trúc riêng biệt mà nó cần chạy trên đó.
Nguyễn Đức Hiển – Bài giảng Lập trình Java
20
Chương trình Java

Như đã đề cập, trong Java mọi thứ đều là lớp.

Mỗi lớp được chứa bên trong một tập tin của nó.


Tên của mỗi tập tin cần phải đặt đúng như tên của
lớp mà nó chứa với phần mở rộng *.Java

Thí dụ, MyFirstProgram.java chứa lớp MyFirstProgram

Ghi chú: quy ước tên này không phải là một gợi ý, đó
là một điều bắt buộc cho những chương trình Java
của bạn được biên dịch đúng.
Nguyễn Đức Hiển – Bài giảng Lập trình Java
21
Thí dụ một chương trình Java
Khai báo lớp
Kết thúc lớp
Phương thức main
Nguyễn Đức Hiển – Bài giảng Lập trình Java
22
Các phần mềm cần cho cài đặt và chạy Java

Những chương trình Java có thể được biên dịch và
chạy với một công cụ gọi là Java SDK (Software
Development Kit)

Nó có thể được tải miễn phí từ internet http
://java.sun.com/javase/downloads/index.jsp

Phiên bản hiện nay là JDK1.6.0
Nguyễn Đức Hiển – Bài giảng Lập trình Java
23
Cài đặt JDK 1.6.0

Nguyễn Đức Hiển – Bài giảng Lập trình Java
24
Đường dẫn mặc đinh (PATH)
Nguyễn Đức Hiển – Bài giảng Lập trình Java
25
Các công cụ chính của SDK

javac

Trình biên dịch Java

Phát sinh Java bytecode từ mã nguồn đã cho

java

Trình thông dịch Java

Chạy một chương trình Java từ bytecode đã cho

jar

Được sử dụng trong việc tạo ra tài liệu lưu trữ Java (.jar)

Có thể là một phương pháp tiện lợi để phân phối những
chương trình Java hoàn chỉnh.

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×