intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình hướng đối tượng - Bài 4: Neted class

Chia sẻ: Nguyên Phương | Ngày: | Loại File: PDF | Số trang:0

56
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Lập trình hướng đối tượng - Bài 4: Neted class" giới thiệu tới người đọc các khái niệm Neted class, tại sao phải sử dụng Neted class, phân loại Neted class. Đây là một tài liệu hữu ích dành cho các bạn sinh viên Công nghệ thông tin và những ai quan tâm đến lĩnh vực này dùng làm tài liệu học tập và nghiên cứu.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình hướng đối tượng - Bài 4: Neted class

  1. 8/24/2011 1. Khái niệm  Java cho phép định nghĩa 1 class trong class Bộ môn Công nghệ Phần mềm khácGọi là nested class Viện CNTT & TT Trường Đại học Bách Khoa Hà Nội  Ví dụ: class OuterClass { ... LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG class NestedClass { Bài 4B. Nested Class } ... } 2 2. Tại sao sử dụng nested class? 3. Phân loại  Nested class chia làm 2 loại:  Ví dụ: class OuterClass { ... static class StaticNestedClass { ... } class InnerClass { ... } } 3 4 3.1. Static nested classes 3.1. Static nested classes (2)  Được truy cập từ tên của class bao nó public class Outside { public static class Skinside {  Để tạo 1 đối tượng của static nested class: public Skinside() Chỉ được truy cập các thành viên static của {  System.out.println("Demo static"); class bao nó } } public class Inside { } public static void main(String[] arg) { Outside.Skinside example = new Outside.Skinside(); } 5 6 } 1
  2. 8/24/2011 3.2. Inner Class 3.2. Inner Class (2)  1 thể hiện (instance) của inner class chỉ tồn  Inner class có thể truy cập tới 1 member bất kỳ của outer class tại được trong 1 thể hiện của outer class  Inner class không được có thành phần static public class Outer { private int id; private class Inner { private static int defaultId; //Error public Inner() { id = 00001; //Truy cập được id ngoài } } 7 8 public class DataStructure { 3.2. Inner Class (3) private final static int SIZE = 15; private int[] arrayOfInts = new int[SIZE]; public DataStructure() {//fill the array with ascending integer values for (int i = 0; i < SIZE; i++) { arrayOfInts[i] = i; } } public void printEven() {//In chỉ số lẻ trong mảng InnerEvenIterator iterator = this.new InnerEvenIterator();  Inner Class lại chia làm 2 loại con: while (iterator.hasNext()) { System.out.println(iterator.getNext() + " "); } } private class InnerEvenIterator { //inner class implements the Iterator pattern //start stepping through the array from the beginning private int next = 0; public boolean hasNext() { return (next
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2