java内部类与抽象类
来源:互联网 发布:python except as 编辑:程序博客网 时间:2024/05/20 06:29
内部类
定义:
内部类对象保存了一个对外部类对象的引用。
OuterClassName.this代表外部类对象的引用
InnerClassName.this代表内部类对象的引用
class Outer{ int outer_i = 100; void test(){ Inner in = new Inner(); in.display();}//在外部类中创建内部类对象void funcOuter() { Inner inner = new Inner(); System.out.println(inner.in); inner.funcInner();} class Inner{ void display(){ System.out.println("display: outer_i = " + outer_i); } void funcInner() { System.out.println("ok"); }}}
特点
- 内部类可以直接访问外部类的成员,反之则不行。
- 内部类可以声明为private或protected。
- 内部类成员只有在内部类的范围之类是有效的。
访问内部类对象的两种方法
//1、创建外部类对象 Outer outer = new Outer(); //在外部类的方法中创建内部类对象 //通过这个内部类对象访问内部方法 outer.funcOuter(); //2、创建外部类对象 Outer outer2 = new Outer(); //通过外部类对象创建内部类对象 Inner inner = outer2.new Inner(); //通过这个inner可以访问内部类对象 inner.funcInner();
static内部类
特点
- static内部类可以象一个普通外部类一样直接创建该对象。
- static内部类只能访问外部类中的静态成员或方法。
- static内部类可以声明static成员,但非static的内部类不可以。
- 修饰符没有任何限制。
static class InnerStatic { int num; static int num3;// static内部类可以申明static成员 void funcInnerStatic() { // System.out.println(out);//static外部类只能访问静态成员变量 System.out.println(num1); // funcOuter();//static外部类只能访问静态方法 funcOuterStatic(); } }
抽象类
定义 :用abstract来修饰一个类
特点
- 抽象类不能直接运用new创建对象
- 抽象类的实体中可以有abstract方法,且abstract方法只允许声明,而不允许实现
- 抽象一个类中包含了abstract方法,则这个类必须声明为abstract类。
- 抽象类的实现子类必须实现抽象类中所有的abstract方法
0 0
- java内部类与抽象类
- java之抽象类与内部类
- java:15-抽象类与内部类
- Java abstract抽象类与匿名内部类
- Java内部类与接口、抽象
- Java内部类与接口、抽象
- Java 内部类、匿名内部类、抽象类
- 接口抽象类与内部类
- 抽象类与接口、内部类 8.1
- Java接口,抽象类,内部类
- java中的抽象类,接口,内部类
- Java接口,抽象类,内部类
- Java接口,抽象类,内部类
- Java接口,抽象类,内部类
- Java接口,抽象类,内部类
- java接口,抽象类,内部类
- [推荐] Java接口,抽象类,内部类
- Java之接口,抽象类,内部类
- PAT 天梯赛练习题 L1-020 帅到没朋友
- xcconfig配置的关系
- Hog算子
- Android NFC相关资料之MifareClassic卡(读写)
- DLL注入技术之ComRes注入
- java内部类与抽象类
- linux下使用crontab设置scrapy爬虫定时抓取数据
- python爬虫编写
- (3)
- 设计模式:观察者模式
- 开博记
- Dll注入技术之APC注入
- 【华为OJ】求int型数据在内存中存储时1的个数
- 遍历文件夹下所有文件