1. Trang chủ
  2. » Cao đẳng - Đại học

SLIDE MÔN JAVA CHƯƠNG 3 LỚP TRONG JAVA

55 387 0

Đ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

Cấu trúc

  • LẬP TRÌNH JAVA

  • Nội dung

  • Các khái niệm

  • Slide 4

  • Slide 5

  • Slide 6

  • Khai báo lớp

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • Khai báo & tạo đối tượng

  • Slide 13

  • Slide 14

  • Ví dụ

  • Mở rộng – Từ khóa this

  • Mở rộng – Từ khóa static

  • Slide 18

  • Các lớp lồng nhau

  • Slide 20

  • Slide 21

  • Bài tập

  • Thừa kế

  • Slide 24

  • Slide 25

  • Thừa kế-Sử dụng từ khóa super

  • Thừa kế - Sử dụng từ khóa super

  • Thừa kế - Chồng phương thức

  • Slide 29

  • Slide 30

  • Slide 31

  • Thừa kế - Xây dựng lớp con

  • Đa hình- đa dạng lớp con

  • Đa hình (Polymorphism)

  • Slide 35

  • Lớp Object

  • Slide 37

  • Slide 38

  • Lớp Abstract

  • Slide 40

  • PowerPoint Presentation

  • Gói (Package)

  • Slide 43

  • Sử dụng Gói (Package)

  • Slide 45

  • Phạm vi truy cập

  • Slide 47

  • Slide 48

  • Phạm vi truy cập-Ví dụ

  • Interface

  • Slide 51

  • Slide 52

  • Slide 53

  • Slide 54

  • Slide 55

Nội dung

LẬP TRÌNH JAVA Chương LỚP TRONG JAVA Đoàn Thanh Sơn Bộ môn: Lập trình máy tính Nội dung  Các khái niệm lập trình hướng đối tượng  Khai báo lớp  Các lớp lồng  Thừa kế đa hình  Lớp Abstract  Gói  Phạm vi truy cập  Interface 2/25 Các khái niệm  Đối tượng (Object) • Thuộc tính (fields) • Hành vi (methods) Rectangle Width: 50cm Height: 30cm Color: Yellow Draw() changeSize() 3/25 Các khái niệm  Thuộc tính (fields) liệu trình bày đặc điểm đối tượng • Mọi đối tượng lớp phải có thuộc tính giá trị thuộc tính khác • Một thuộc tính đối tượng nhận giá trị khác thời điểm khác  Ví dụ: đối tượng hình chữ nhật có thuộc tính chiều dài, chiều rộng 4/25 Các khái niệm  Phương thức (method) cho phép tác động lên liệu đối tượng • Các phương thức xác định cách thức hoạt động đối tượng  Ví dụ: hoạt động chung lớp hình chữ nhật tính chu vi diện tích 5/25 Các khái niệm  Lớp (Class) • Là tập hợp đối tượng loại • Là khuôn mẫu tạo đối tượng • Là kiểu liệu phần mềm Lớp: Rectangle Đối tượng: RectangleA Đối tượng: RectangleB 6/25 Khai báo lớp  Cú pháp: class Name{ // Khai báo thuộc tính // Khai báo phương thức } 7/25 Khai báo lớp  Khai báo thuộc tính • Cú pháp: [=value]; • Ví dụ class Circle { double radius = 1.0; int color; } 8/25 Khai báo lớp  Khai báo phương thức : • Cú pháp: (){ ; } • Ví dụ public class Circle { double radius = 1.0; public double findArea(){ return radius * radius * 3.14159; } } 9/25 Khai báo lớp  Khai báo • Constructor (phương thức tạo): phương thức đặc biệt, cần gọi để xây dựng đối tượng Không có giá trị trả  Phải tên với tên lớp  Có thể có nhiều phương thức khởi tạo  • Ví dụ: class Circle { double radius = 1.0; Circle(){} Circle(double rad){ radius = rad; } } 10/25 abstract class MyAbstractClass { abstract void callme(); void callmetoo() { System.out.println(“Day khong phai abstract"); } } class B extends MyAbstractClass { void callme() { System.out.println(“Thuc thi lop B"); } } public class Main { public static void main(String args[]) { MyAbstractClass a = new MyAbstractClass(); B b = new B(); b.callme(); b.callmetoo(); } } 41/25 Gói (Package)  Là đơn vị tổ chức mô hình thiết kế dự án chứa lớp interface  Gói thể cấu trúc lưu trữ thư mục  Tác dụng • Nhóm thành phần liên quan • Giới hạn truy cập từ thành phần bên • Tổ chức code dễ quản lý 42/25 Gói (Package)  Khai báo gói package tên_gói;  Khai báo gói đa cấp package pkg1[.pkg2[.pkg3]];  Ví dụ package graphics; public class Rectangle{ … public double calculateArea() {  return width*height;  } } 43/25 Sử dụng Gói (Package)  Truy cập thành phần thuộc gói • Sử dụng tên đầy đủ: graphics.Circle myCircle = new graphics.Circle(); • Sử dụng câu lệnh import để nạp lớp gói import graphics.Rectangle; Rectangle myRectangle = new Rectangle(); • Sử dụng import để nạp toàn gói import graphics.*; Circle myCircle = new Circle(); Rectangle myRectangle = new Rectangle(); 44/25 Gói (Package)  Code chương trình: • Khai báo gói • Các câu lệnh import • Khai báo thành phần package MyPack; import java.util.Date; public class Main { public static void main(String args[]) { System.out.println(new Date()); } } 45/25 Phạm vi truy cập  Tác dụng: tăng tính bảo mật  Cách khai báo: [modifier] class ten_lop{ [modifier] dataType ten_thuoctinh; [modifier] returnedValue ten_phuongthuc{ … } } 46/25 Phạm vi truy cập  Java có phạm vi truy cập cho thành phần • public: truy cập tất thành phần khác • private: truy cập thành phần lớp • protected: truy cập lớp • default (không khai báo): truy cập thành phần gói 47/25 Phạm vi truy cập  Vị trí & phạm vi truy cập 48/25 Phạm vi truy cập-Ví dụ o Modifier Alpha 49/25 Interface  Tác dụng: quy định khung tối thiểu để tạo lớp thừa kế Khai báo [modifier] interface name { return-type method-name1(parameter-list); type varname1 = value; // return-type method-nameN(parameter-list); type varnameN = value; }   Các biến ngầm định là: public, static, final 50/25 Interface  Ví dụ interface MyInterface{ void callback(int param); } 51/25 Interface  Tạo class từ interface [modifier] class classname [extends superclass] [implements interface [,interface ]] { // class-body }  Trong Java, không cho phép thừa kế từ nhiều superclass thừa kế từ nhiều interface  Chú ý ghi tiền tố truy cập 52/25 Interface Ví dụ interface MyInterface { void callback(int param); } class Client implements MyInterface{ public void callback(int p) { System.out.println(“Call:" + p); } } public class Main { public static void main(String args[]) { MyInterface c = new Client(); c.callback(42); } }  53/25 Interface  Nếu class thực thi interface không đầy đủ lớp phải lớp abstract Ví dụ interface MyInterface { void callback(int param); void show(); } abstract class Incomplete implements MyInterface { int a, b; public void show() { System.out.println(a + " " + b); } }  54/25 Interface  Interface thừa kế interface IntefaceA { void meth1(); void meth2(); } interface IntefaceB extends IntefaceA { void meth3(); } 55/25 ... tập  Tìm hiểu lớp • String • StringBuffer • Math • ArrayList • Date • List 22/25 Thừa kế  Tạo lớp từ lớp tồn • Lớp gọi lớp con, lớp dẫn xuất (subclass) • Lớp cũ gọi lớp cha, lớp sở (superclass)... kế - Chồng phương thức  Xảy phương thức lớp có tên kiểu trả phương thức lớp cha  Phương thức lớp cha bị che khuất  Để truy cập phương thức lớp cha, sử dụng từ khóa super 28/25 Thừa kế - Chồng... truy cập 18/25 Các lớp lồng  Java cho phép định nghĩa lớp bên lớp khác  Cấu trúc class OuterClass { static class StaticNestedClass { } class InnerClass { } } 19/25 Các lớp lồng  Ví dụ class

Ngày đăng: 23/06/2017, 20:17

TỪ KHÓA LIÊN QUAN

w