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

Giáo trình Java P5

30 487 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Kế thừa
Tác giả Nguyễn Việt Hà
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Phần Mềm
Thể loại Tài liệu tham khảo
Định dạng
Số trang 30
Dung lượng 171,03 KB

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

Nội dung

Nội dung a Van dé sv dung lai = Sử dụng lại bằng kê thừa = Kê thừa trong Java định nghĩa lớp kê thừa thêm phương thức, thuộc tính kiềm soát truy cập... Vidu: nas a class Person {

Trang 1

Ké thtra

Trang 2

Nội dung

a Van dé sv dung lai

= Sử dụng lại bằng kê thừa

= Kê thừa trong Java

định nghĩa lớp kê thừa

thêm phương thức, thuộc tính

kiềm soát truy cập

Trang 3

Tài liệu tham khảo

a /hinking in Java, chapter 6

a Java how to program, chapter 9

Nguyén Viét Ha Kê thừa

Trang 4

Su dung lal

= TOn tại nhiêu loại đôi tượng có các thuộc

tinn va hành vị tương tự hoặc liên quan đên nhau

Person, Student, Manager,

7 Xuat hiện nhu câu sử dụng lại các mã

nguôn đã viết

Sử dụng lại thông qua copy

Sử dụng lại thông qua quan hệ has_ a

Sử dụng lại thông qua cơ chê “kê thừa”

Nguyễn Việt Hà Kê thừa

Trang 5

Sử dụng lại cài đặt với giao diện mới

m Phải việt lại giao diện

=» Chưa đủ mêm dẻo

Nguyễn Việt Hà Kê thừa

Trang 6

Vidu: nas a

class Person {

private String name;

private Date bithday;

public String getName() { return name; }

}

class Employee {

private Person me;

private double salary;

public String getName() { return me.getName(); }

Nguyén Viét Ha Kê thừa

Trang 7

class Manager {

private Employee me;

private Employee assistant;

public setAssistant (Employee e) { }

Manager junior = new Manager ();

Manager senior = new Manager ();

senior.setAssistant (junior); // error

Nguyén Viét Ha Kê thừa

Trang 8

Kê thừa

= Dua tren quan ne /s a

= Thuwa huong lại các thuộc tính và phương thức đã có

= Chỉ tiêt hóa cho phù hợp với mục đích sử

dụng mới

Thêm các thuộc tĩnh mới

Thêm hoặc hiệu chỉnh các phương thức

Nguyễn Việt Hà Kê thừa

Trang 10

Kê thừa trong Java

[public] class DerivedClass extends BaseClass {

/* new features goes here */

Vidu:

class Employee extends Person {

private double salary;

public boolean setSalary (double sal) {

salary = sal;

return true;

Trang 12

A

private members

class Employee extends Person {

public String getDetail() {

Trang 13

Murc truy cap protected

= Đề đảm bảo che dâu thông tin, thông

thường các thuộc tinh được khai bao la

private

Đôi tượng thuộc lớp dẫn xuất phải truy cập tới

chúng thông qua các phương thức get và set

= Mức truy cập protected giải quyêt vân đê

này

Đôi tượng của lớp dẫn xuật truy cập được

các protected members cua |d’p co’ sO

Các đôi tượng khác không truy cập được

Trang 14

public class Person {

protected Date birthday;

protected String name;

public class Employee extends Person {

public String getDetail() {

Trang 16

public class Employee extends Person {

public String getDetail() {

Trang 17

Knac gol

import abc.Person;

package abc;

public class Person {

protected Date birthday;

protected String name;

public class Employee extends Person {

public String getDetail() {

Trang 18

= Đôi tượng của lớp dẫn xuất sẽ hoạt động

VỚI phương thức mới phủ hợp với nÓ

= Co thê tái sử dụng phương thức cùng tên

của lớp cơ sở bằng từ khóa super

Trang 19

package abc;

Vi $ public class Person {

| ụ protected Date birthday;

protected String name;

import abc;

public class Employee extends Person {

public String getDetail() {

Trang 20

A

Dinh nghia lại phương thức

m Phải có quyên truy cập không chặf hơn

phương thức được định nghĩa lại

= Phải có kiêu giá trị trả lại như nhau

Trang 21

class Parent {

public void doSomething() {}

public int doSomething2() {

return 0O;

class Child extends Parent {

protected void doSomething() {}

public void doSomething2() {}

Trang 22

Thừa kê nhiêu tâng

Mọi đôi tượng đêu

thừa kê từ lớp gôc Oblect

—rank —-proyect

Kê thừa

Trang 23

Constructor

a Lop dan xuat ké thtva moi thuéc tinh va

phương thức của lớp cơ sở

=m Không kê thừa phương thức khởi tạo

= Co hai giail phap goi constructor cua lớp

Trang 24

protected int radius;

Trang 25

m sa

Gọi constructor của lớp cơ sở

m Việc khởi tạo thuộc tính của lớp cơ sở nên

giao pho cho constructor cua lớp cơ sở

= Sử dụng từ khóa super đề gọi

consftructor của lớp cơ SỞ

Constructor của lớp cơ sở bắt buộc phải được thực hiện đâu tiên

Nêu lớp cơ sở không có constructor mặc định thì bát buộc phải gọi construcfor tường minh

Trang 26

protected int radius;

Trang 27

protected int radius;

public Circle(int xx, int yy,

Trang 28

protected int radius;

Trang 29

protected int radius;

public Circle() {

System.out.printlin ("Circle constructor") ;

Circle c new Circle ();

Trang 30

Tu khnoa final

m | huoc tinh final

hằng sô, chỉ được gán giá trị khởi tạo một lân, không

thay đôi được gia trị

Ngày đăng: 19/10/2013, 11:15

TỪ KHÓA LIÊN QUAN

w