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

Công nghệ lập trình hứơng đối tượng_ Chương 3

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 (269.91 KB, 41 trang )

Chương 3

Ngơn Ngữ Java

Trường Đại học Cơng nghệ Sài gịn
Khoa Công nghệ Thông tin


Mục Tiêu




Phiên dịch một chương trình Java
Hiểu biết cơ bản ngôn ngữ Java
Kiểu dữ liệu

Trường Đại học Công nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Java Program Structure




Môi trường
Khai báo Class
Tokens:


 Các định danh.
 Từ khóa.
 Tóan tử.

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA


VD Java program

// This is a simple program called “First.java”
class First
{
public static void main(String args[])
{
System.out.println(“My first program in Java”);
}
}

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Biên dịch và chạy
C:\jdk1.4\bin>javac First.java
 C:\jdk1.4\bin>java First

Kết quả:
My first program in Java


Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA


Truyền các đối số dòng lệnh
class Pass
{
public static void main(String parameters[])
{
System.out.println("This is what the main method
received");
System.out.println(parameters[0]);
System.out.println(parameters[1]);
System.out.println(parameters[2]);
}
}

Trường Đại học Công nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Truyền các đối số dịng lệnh(tt…)


Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Cơ Sở Của Ngôn Ngữ Java


Classes & Methods



Data types



Variables



Operators



Control structures

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin


OOP JAVA


Classes in Java


Cú pháp khai báo Class

class Classname
{
var_datatype variablename;
:
met_datatype methodname(parameter_list)
:
}

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


VD class

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA



Nested Classes
Định nghĩa một class bên trong một class khác
gọi là ‘Nesting’.


class OuterClass {
... class NestedClass { ... }
}

Được chia vào các dạng:



Static: được gọi là “static nested classes “ dùng làm help
 Non-static: được gọi là “inner classes “


Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Các dạng Data




Primitive Data Types

 Byte
 Char
 Boolean
 Short,int,long
 Float, double
Reference data types


Array



Class



Interface

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA


Chuyển kiểu


Một dạng dữ liệu được chuyển vào một dạng khác
 Ẩn: Thấp->Cao:
byte --> short --> int --> long --> float --> double

For example:

double x;
int n = 5;
x = n;
n = x;//không hợp lệ
 Hiện:

float c = 34.89675f;
int b = (int)c + 10;

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA


So Sánh 2 Dạng Dữ liệu
primitive data
class
 Đơn giản nhất.
 Phức tạp hơn.
 Khơng thể phân chia
 Nhóm của các dạng
 Chỉ có trị khơng method
khác(primitive hay class)
 VD:
 Bao gồm data và methods
int - integer
 VD:

double – floating point (real)
SavitchIn
char - character
String

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA


Biến (Variables)




Khai báo biến gồm 3 phần:
 Kiểu dữ liệu.
 tên
 Giá trị khởi tạo.
Cú pháp:
datatype identifier [=value][, identifier[=value]...];

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Tên biến

Qui định
 Khơng bắt đầu với số.
 Chứa số,kí tự, (_) và $
(tránh dùng)
 Phân biệt hoa và thường
(ThisName và thisName là
khác nhau)

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

Nên
 Nên đặt tên có nghĩa
(eggsPerBasket hơn là count)
 Bắt đầu với kí tự thường.
 Hoa đầu từ (eggsPerBasket hơn
là eggsperbasket)
 Tránh dùng $.

OOP JAVA


Từ khóa

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA



Khai báo Array


Có 3 cách:


datatype identifier [ ]; // lúc này chưa dùng được vì chưa có kích thước or value



datatype identifier [ ] = new datatype[size];



datatype identifier [ ]= {value1,value2,….valueN};

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Các phương thức trong Class


Định nghĩa một tác vụ trên một đối tượng.



Cú pháp:

access_specifier modifier datatype method_name(parameter_list)
{
//body of method
}

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


VD
class Temp {
static int x = 10;
// variable toàn cục
public static void show( ) { // method
System.out.println(x);
}
public static void main(String args[ ]) {
Temp t = new Temp( );
// object 1
t.show( );
// method call
Temp t1 = new Temp( );
// object 2
t1.x = 20;
t1.show( );
}
}
Trường Đại học Cơng nghệ Sài gịn

Khoa Cơng nghệ Thông tin

OOP JAVA


Phạm Vi truy cập của Method


public



private



Protected



default

Trường Đại học Công nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Method Modifiers








static
abstract
final
native
synchronized
volatile

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thông tin

OOP JAVA


Methods Overloading và Overriding


Methods Overloading
 Overloaded

Methods:
 Ở trong cùng một Class
 Có cùng tên phương thức
 Có tham số truyền khác nhau
 Phương thức Overload là một đặc trưng của tính đa hình trong

thời điểm biên dịch.


Methods Overriding
 Overridden Methods:
 Ở trong Class cha và Class con.
 Được định nghĩa lại trong class con.


Phương thức Overridden là một đặc trưng của tính đa hình
trong thời điểm runtime. (Binding Dynamic)

Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Khởi tạo Class





Là một phương thức dùng khởi tạo các biến thành viên của Class
Tên giống với tên Class và khơng có trị trả về.
Được gọi khi một đối tượng được khởi tạo.
Các dạng:
 Hiện constructors
 Ẩn constructors


Trường Đại học Cơng nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


Khởi dựng các class dẫn xuất



Có cùng tên như Class con.
Lệnh khởi dụng Class cha nên là lệnh đầu tiên trong phương thức khởi
dựng của Class con.

Trường Đại học Công nghệ Sài gịn
Khoa Cơng nghệ Thơng tin

OOP JAVA


×