Cách tạo gói packagetìm kiếm tất cả các lớp được sử dụng trong chương trình.. mà ta import cả 2 package -> khi đó xung đột tên lớp -> khi đó cần sử dụng tên đầy đủ để truy xuất đến lớp..
Trang 1Giới thiệu về Packages
Bài 09
Trang 3interface và các gói con khác
Ví dụ: java.awt, java.lang
Tránh trường hợp trùng lặp tên.
Nhóm các class cùng mục đích vào một package.
Cho phép bảo vệ các lớp đối tượng.
Trang 4package
mục mang tên của gói.
thường để phân biệt lớp và gói.
phải được biên dịch
thì phải import gói vào.
Trang 5Cách tạo gói (package)
package <pkgname>;
Ex: package myLib;
package
cần tạo trong package
tượng đã được định nghĩa trong package
Trang 6Cách tạo gói (package)
tìm kiếm tất cả các lớp được sử dụng trong
chương trình
tìm classes:
Tên packages
Danh sách các biến môi trường trong CLASSPATH.
sẽ tìm đường dẫn mặc định java\lib và
Trang 7char reverse[] = new char[str.length()];
boolean flag = true;
ctr++;
} for (count = 0;count < str.length();count+
Output
Trang 8Lưu ý
trong một chương trình khác thì phải khai báo
là public
mà ta import cả 2 package -> khi đó xung
đột tên lớp -> khi đó cần sử dụng tên đầy đủ
để truy xuất đến lớp
Ví dụ: myLib.myInt.Matran mt1 = new ….
myLib.myFloat.Matran mt2 = new ….
=> Sử dụng tên đầy đủ.
Trang 9Packages và Phạm vi truy xuất
Packages như một container cho các classes,
interfaces và các packages con.
Classes là container cho data và method.
Có 4 từ khóa quy định cho phạm vi truy xuất:
hoặc no modifier
Trang 10Packages và Phạm vi truy xuất
xuất từ các lớp trong cùng package, các lớp
bên ngoài package nhưng kế thừa lớp đó
cùng package
Trang 11Packages và Phạm vi truy xuất
Trang 12tượng tương ứng với các kiểu dữ liệu.
rộng của lớp Number
Trang 13Wrapper Classes
Float, Byte, Short, Integer và
Long
double và float
với kiểu dữ liệu: byte, short, int và long
Trang 14String number = args[0];
Byte byNum = Byte.valueOf(number);
Short shNum = Short.valueOf(number);
Integer num = Integer.valueOf(number);
Long lgNum = Long.valueOf(number);
Trang 16Lớp String
String str1 = new String();
String str2 = new String(“Hello World”);
char ch[ ] = {‘A’,’B’,’C’,’D’,’E’};
String str3 = new String(ch);
String str4 = new String(ch,0,2);
chuỗi
Trang 17Ví dụ
class Stringdemo {
public static void main(String args[]) {
String ans1, ans2,ans3,ans4;
ans1 = new String("Answer");
ans2 = "Answer";
ans4 = new String("ANSWER");
ans3 = new String("Answer");
if(ans1 == ans2) System.out.println("ans1 and ans2 are same object");
if(ans1 == ans3) System.out.println("ans1 and ans3 are same object");
if(ans1.equals(ans2)) System.out.println("ans1 and ans2 have same content");
if(ans1.equalsIgnoreCase(ans4))
System.out.println("ans1 and ans4 have same content");
if(ans1.compareTo("Answers") == 0) System.out.println("Same content alpabetically");
if(ans1.startsWith("A")) System.out.println("Starts with A");
if(ans1.endsWith("r"))
Output
Trang 19System.out.println("Hey my name also starts with an M! ");
int length = name.length();
System.out.println("Your name has "+length+" characters");
String name_in_caps = name.toUpperCase();
System.out.println(name_in_caps);
}
} Output
Trang 20Lớp StringBuffer
Cung cấp những phương thức khác nhau để thao tác
trên đối tượng string (chuỗi ký tự)
Những đối tượng của lớp này khá linh hoạt.
Một số phương thức của lớp StringBuffer:
Trang 21StringBuffer sbObj = new StringBuffer(str);
str = sbObj.append(" And Goodbye").toString();
System.out.println(str);
}
}
Output
Trang 22Lớp Math
Tất cả các phương thức đề dc mô tả là static.
Lớp này là final, do đó không thể kế thừa từ lớp
này được.
với kiểu dữ liệu số
Trang 24Ví dụ class MathDemo
{ public static void main(String[] args) {
Output
Trang 26class RuntimeDemo {
public static void main(String[] args) {
Runtime Objrun = Runtime.getRuntime();
Process Objprocess = null;
try { Objprocess = Objrun.exec("calc.exe");
} catch(Exception e)
{ System.out.println("Error executing Calculator");
} } }
Example
Output
Trang 27System class
Cung cấp những hạ tầng chuẩn như nhập (Input),
xuất (Output) và các luồng lỗi(Error Streams).
Cung cấp khả năng truy xuất đến những thuộc tính
của hệ thống thực thi Java, và những thuộc tính môi
trường như phiên bản, đường dẫn, nhà cung cấp….
Các thuộc tính của lớp này như: in, out & err là
các đầu vào chuẩn, ra chuẩn, lỗi…
Trang 30Object class
nào đó thì sẽ mặc định là kế thừa từ lớp
Object
Trang 32duy nhất trong cùng một thời điểm, nhưng có thể dẫn xuất cùng lúc nhiều Interfaces
thể (concrete methods)
(implements)
Trang 33Các bước tạo Interface
Tất cả các method trong interface phải là public.
Tất cả các method phải được định nghĩa lại trong
lớp mà implement interface đó.
Trang 34Sử dụng interface
thể dẫn xuất từ các interface khác
interface đó dẫn xuất từ các interface khác thì lớp đó phải định nghĩa tất cả các phương
thức có trong các interface đó
dữ liệu tham chiếu cũng được tạo ra
Trang 35Ví dụ
public interface myinterface
{
public void add(int x,int y);
public void volume(int x,int y,int z);
}
//Giao diện để định nghĩa các hằng số
public interface myconstants
{
public static final double price=1450.00;
public static final int counter=5;
System.out.println(“ “+(x*y*z));
} public static void main(String args[]) {
Demo d=new Demo();
d.add(10,20);
d.volume(10,10,10);
}