1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình Java – Chương 2: Lập trình hướng đối tượng ngôn ngữ Java

44 120 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 44
Dung lượng 1,76 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Lập trình Java Chương 2: Lập trình hướng đối tượng ngôn ngữ Java cung cấp cho người học các kiến thức: Kế thừa, final method and final class, abstract class and interface, tạo tài liệu Java doc,... Mời các bạn cùng tham khảo.

Trang 2

• K th a ế ừ

– Khai báo k th aế ừ

– Ph m vi s d ng private, protected, public ạ ử ụ– M t s t khoá thông d ng ộ ố ừ ụ

• Final method & Final Class

• Abstract class & Interface

• Array List <E>

• T o tài li u Java doc ạ ệ

Trang 3

Khai báo kế thừa

public class TenLopCha {

//Khai bao cac thu c tinh ọ

//Khai bao cac ph uo ng th c ư

public class TenLopCon extends TenLopCha{

//Khai bao cac thu c tinh ọ

//Khai bao cac ph uo ng th c ư

}

Object là l p c s nh t trong Java Trong trơ o ơ â uơ ng h p m t l p không khai báo k th a t b t ky l p nào thì l p Object chính là l p cha c a ơ ộ ơ ế ừ ừ â ơ ơ ơ u nó

Trang 4

public class GiangVien {

//Khai bao cac thu c tinh ọ //Khai bao cac ph uo ng th c ư

Trang 6

• Truy xu t l p hi n t i: â ơ ệ ạ this

• Truy xu t đ n l p cha: â ế ơ super

• Ch đ nh ph i i uo ng th c kh i t o c a l p cha: ư ơ ạ u ơ super(), super(…)

• Cài đ t l i ph ạ ạ uo ng th c c a l p cha ư u ơ

@Override

public KieuDuLieu tenPhuongthuc (…)

L u y: phu uong th c static không đư uơc phep Override

• G i ph o uo ng th c c a l p cha: ư u ơ super.tenPhuongThuc( )

• Ki m tra th hi n c a đ i t ê ê ệ u ố uơ ng: instanceOf

Trang 7

if (b instanceof B) {

System.out.println(“b is an instance of B");

}

Trang 8

Final Method là m t ph ộ uo ng đ uơ c khai báo v i t khóa ơ ừ final

• Final Method không đ uơ c phep override l p k th a ơ ơ ế ừ

• Các ph uo ng th c t o không đ ư ạ uơ c phep khai báo v i t khóa ơ ừ final

Trang 9

private String name;

public final String getName () { .}

public final void setName () { .}

L i ỗ : Không th Override m t ph ể ộ ươ ng th c final ứ

L i ỗ : Không th Override m t ph ể ộ ươ ng th c final ứ

Trang 10

• Final Class là m t l p đ ộ ơ uơ c khai báo v i t khóa ơ ừ final

• Final Class không cho phep k th a ế ừ

• Ví d : ụ

– Integer, Double, Float, Long là các Final Class

– A là Final Class � Các l p khác không th k th a đ ơ ê ế ừ uơ ơc l p A

Trang 12

• Hình nh: ả

Trang 13

Abstract Class

• Abstract Class là m t l p đ ộ ơ uơ c khai báo v i t khóa abstract ơ ừ

• Abstract Class có th ch a các ph ê ư uo ng th c abstract ho c ph ư ạ uo ng th c có cài đ t ư ạ

• Ph uo ng th c abstract là ph ư uo ng th c không có cài đ t ư ạ

public void nhap(){ }

public abstract double tinhLuong();

Trang 14

• Abstract Class không th t o th hi n ê ạ ê ệ

GiangVien gv = new GiangVien() �

• Abstract Class có th gi tham chi u đ i t ê ữ ế ố uơ ng c a các Sub Class u

Trang 15

Abstract Class

• N u các Sub Class không ph i là Abstract Class thì: ế ả

– B t bu c ph i cài đ t l i t t c các phắ ộ ả ạ ạ â ả uong th c abstract c a l p cha ư u ơ

– Không b t bu c cài đ t l i các phắ ộ ạ ạ uong th c không là abstract c a l p cha.ư u ơ

• N u các Sub Class là Abstract Class thì không b t bu c ph i cài đ t l i ph ế ắ ộ ả ạ ạ uo ng th c ư abstract / không abstract c a l p cha u ơ

Trang 16

public abstract class GiangVien{

//Khai bao cac thu c tinh ọ

Trang 18

}

Trang 19

}

Trang 20

• Đ uơ c khai báo v i t khóa ơ ừ interface

publicinterface Hinh{…}

public interface Hinh{

public static final double PI =3.14;

public void tinhDienTich ();

public void tinhChuVi ();

}

Trang 21

Interface

• M t interface có th k th a t nhi u interface khác ộ ê ế ừ ừ ề

• M t l p có th k th a t 1 l p và có th cài đ t l i t nhi u interface ộ ơ ê ế ừ ừ ơ ê ạ ạ ừ ề

1

2

3

public interface IA{…}

public interface IB{…}

public interface IC extends IA, IB {…}

1

2

3

4

public class A{…}

public interface IB{…}

public interface IC{…}

public class B extends A implements IB, IC{…}

N u m t l p khi ế ộ ơ implements t m t inteface thì l p đó ừ ộ ơ ph i cài đ t l i t t c các ph ả ặ ạ ấ ả ươ ng th c abstract ứ c a interface u

Trang 22

2

3

public interface Hinh {

public double tinhDienTich ();

public double tinhChuVi ();

Trang 23

Interface

1

2

3

public interface Hinh {

public double tinhDienTich ();

public double tinhChuVi ();

Trang 24

3

4

public double tinhDienTich ();

public double tinhChuVi ();

Trang 25

Bài tập: Hình học

• Xây d ng các l p HinhHoc, HinhChuNhat, HinhTamGiac, HinhTron và vi t ch ư ơ ế uo ng trình cho phep:

– Nh p vào m t m ng hình h c (có th là HinhChuNhat, HinhTamGiac, HinhTron)ậ ộ ả o ê

Trang 27

Phát triển UD CSDL 2

Array List <E>

Trang 29

ArrayList <E> - Tạo Array List

Trang 30

• Ví d t o ụ ạ ArrayList h p l : ơ ệ

• Ví d t o ArrayList không h p l : ụ ạ ơ ệ

– ArrayList <int> list1 = new ArrayList <int>();

– ArrayList <float> list2 = new ArrayList <float>(); – ArrayList <double> list3 = new ArrayList <double>();

ArrayList <ArrayList<HocSinh>> list4 =

new ArrayList <ArrayList<HocSinh>> ();

Trang 31

ArrayList <E> - Một số phương thức thông dụng

• T o ArrayList: ạ new

– ArrayList<PhanSo> list = newArrayList <PhanSo>()

• Them vào cu i: ố add (E element)

– list.add (new PhanSo(1,2));

– list.add (new PhanSo(3,4));

• C p nh t: ậ ậ set ( int index, E element)

– list.set(0, new PhanSo(2,3));

Trang 32

• Xóa: remove (E element), remove (int index)

• Xóa toàn b : ộ clear ()

Trang 33

ArrayList <E> - Một số phương thức thông dụng

• L y ph n t : â ầ ử get (int index)

PhanSo ps = list.get(2);

• Ki m tra t n t i: ê ồ ạ contains ()

boolean kq = list.contains(ps);

Trang 34

• Java Doc:

– T o tài li u mô t c u trúc, di n gi i các thành ph n c a project.ạ ệ ả â ễ ả ầ u

– Giúp cho mã ngu n rõ ràng h n, d dàng cho vi c chia sẽ, m r ng và nâng c p v sau.ồ o ễ ệ ơ ộ â ề

• Cách th c hi n: ư ệ

R-Click tren Project Generate Java Doc

Trang 35

Tạo Java Doc

• Cách vi t comment đ t o tài li u Java Doc: ế ê ạ ệ

/**

* N i dung comment ộ

*

* @thamso1 Giá tri

* @thamso2 Giá tri

*/

Trang 36

* @param ten tên c a ủ hình

* @param dai chi u ề dài c a ủ hình chử nh t ậ

* @param rong chi u ề r ng ọ c a ủ hình chử nh t ậ

*/

public HinhChuNhat(String ten, double dai, double

rong) {…}

}

Trang 37

Tạo Java Doc

Trang 39

Tạo UML Class Diagram

B1: Cài đ t UML Plugin cho Netbeans:ạ

• Here is how to install on 7.1

• Add a new configuration to update centers: Tools -> Plugins -> Settings -> Add

• As the URL copy the following into the textbox:

http://dlc.sun.com.edgesuite.net/netbeans/updates/6.9/uc/m1/dev/catalog.xml

• Now on the tab Available Plugins there should be UML in category UML Install the plugin, and its done !!

Trang 41

• Cách 1:

B2 : R-Click project Ch n Reverse Engineering Create New UML Project ơ o

Trang 43

• Cách 2: S d ng yWorks UML doclet ử ụ

– Download yWorks UML Doclet:

• http://www.yworks.com/en/downloads.html#yFiles

– Gi i nen file yworks-uml-doclet-3.0_02-jdk1.5.zip Ghi nh th m c đã gi i nenả ơ u ụ ả

– C u hình tham s lúc t o Java Doc:â ố ạ

– ksgCh n project � R_Click� Properties�Documenting �Additional javadoc Options o ksg

– R-Click project Ch n Reverse Engineering Create New UML Project ơ o

-docletpath "C:\yworks-uml-doclet-3.0_02-jdk1.5\lib\ydoc.jar" -resourcepath "C:\yworks-uml-doclet-3.0_02-jdk1.5\resources" -doclet ydoc.doclets.YStandard – umlautogen

C:\yworks-uml-doclet-3.0_02-jdk1.5 : Đ uơ ng d n gi i nen yWorks UML doclet ẫ ả

Ngày đăng: 16/07/2020, 10:48

HÌNH ẢNH LIÊN QUAN

• Hình nh: ả - Bài giảng Lập trình Java – Chương 2: Lập trình hướng đối tượng ngôn ngữ Java
Hình nh ả (Trang 12)
Bài tập: Hình học - Bài giảng Lập trình Java – Chương 2: Lập trình hướng đối tượng ngôn ngữ Java
i tập: Hình học (Trang 26)
– Cu hình thams lúc to Java Doc: ạ - Bài giảng Lập trình Java – Chương 2: Lập trình hướng đối tượng ngôn ngữ Java
u hình thams lúc to Java Doc: ạ (Trang 43)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN