黑马程序员_第六天

原创 2012年03月29日 09:32:51

----------------------android培训java 培训、期待与您交流! ----------------------



 

内部类

内部类是指在一个外部类的内部再定义一个类。

内部类作为外部类的一个成员,并且依附于外部类而存在的。

内部类可为静态,可用protectedprivate修饰。(而外部类不可以:外部类只能

使用publicdefault

1.成员内部类

1.1作为外部类的一个成员存在,与外部类的属性、方法并列

1.2成员内部类中,不能定义静态成员
1.3成员内部类中,可以访问外部类的所有成员

1.4访问外部类中与内部类同名的实例变量用外部类名.this.变量名

成员内部类的优点:

⑴内部类作为外部类的成员,可以访问外部类的私有成员或属性。(即使将外部类声

明为PRIVATE,但是对于处于其内部的内部类还是可见的。)

⑵用内部类定义在外部类中不可访问的属性。这样就在外部类中实现了比外部类的

private还要小的访问权限。

注意:内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。

对于一个名为outer的外部类和其内部定义的名为inner的内部类。编译完成后出现

outer.classouter$inner.class两类。

注意:当Outer是一个private类时,外部类对于其外部访问是私有的,所以就无法

建立外部类对象,进而也无法建立内部类对象

2局部内部类

在方法中定义的内部类称为局部内部类。

与局部变量类似,在局部内部类前不加修饰符publicprivate,其范围为定义它的

代码块

在类外不可直接生成局部内部类(保证局部内部类对外是不可见的)。

要想使用局部内部类时需要生成对象,对象调用方法,在方法中才能调用其局部内部

类。

通过内部类和接口达到一个强制的弱耦合,用局部内部类来实现接口,并在方法中返

回接口类型,使局部内部类不可见,屏蔽实现类的可见性。

3静态内部类(嵌套类)

静态内部类定义在类中,任何方法外,用static定义。

4.匿名内部类.

匿名的内部类不能extends(继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现

匿名内部类不能有构造方法。  

匿名内部类不能定义任何静态成员、方法和类。  

匿名内部类不能是public,protected,private,static  

只能创建匿名内部类的一个实例。

一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。  

因匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效

内部类

内部类是指在一个外部类的内部再定义一个类。

内部类作为外部类的一个成员,并且依附于外部类而存在的。

内部类可为静态,可用protectedprivate修饰。(而外部类不可以:外部类只能

使用publicdefault

1.成员内部类

1.1作为外部类的一个成员存在,与外部类的属性、方法并列

1.2成员内部类中,不能定义静态成员
1.3成员内部类中,可以访问外部类的所有成员

1.4访问外部类中与内部类同名的实例变量用外部类名.this.变量名

成员内部类的优点:

⑴内部类作为外部类的成员,可以访问外部类的私有成员或属性。(即使将外部类声

明为PRIVATE,但是对于处于其内部的内部类还是可见的。)

⑵用内部类定义在外部类中不可访问的属性。这样就在外部类中实现了比外部类的

private还要小的访问权限。

注意:内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。

对于一个名为outer的外部类和其内部定义的名为inner的内部类。编译完成后出现

outer.classouter$inner.class两类。

注意:当Outer是一个private类时,外部类对于其外部访问是私有的,所以就无法

建立外部类对象,进而也无法建立内部类对象

2局部内部类

在方法中定义的内部类称为局部内部类。

与局部变量类似,在局部内部类前不加修饰符publicprivate,其范围为定义它的

代码块

在类外不可直接生成局部内部类(保证局部内部类对外是不可见的)。

要想使用局部内部类时需要生成对象,对象调用方法,在方法中才能调用其局部内部

类。

通过内部类和接口达到一个强制的弱耦合,用局部内部类来实现接口,并在方法中返

回接口类型,使局部内部类不可见,屏蔽实现类的可见性。

3静态内部类(嵌套类)

静态内部类定义在类中,任何方法外,用static定义。

4.匿名内部类.

匿名的内部类不能extends(继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现

匿名内部类不能有构造方法。  

匿名内部类不能定义任何静态成员、方法和类。  

匿名内部类不能是public,protected,private,static  

只能创建匿名内部类的一个实例。

一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。  

因匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效

----------------------android培训java 培训、期待与您交流! ----------------------

详细请查看:http://edu.csdn.net/heima

黑马程序员_java第六天基础总结

1:Java中的参数传递问题。 基本类型:形式参数的改变对实际参数没有影响。 引用类型:形式参数的改变直接影响实际参数。 2:面向对象 (1)面向对象:是基于面向过程的一种思想。 面向过程:以函数为基...
  • u013334001
  • u013334001
  • 2014年01月22日 18:20
  • 327

黑马程序员————第六天

Xcode 运行原理   编译-->.o目标文件-->链接-->.out运行   文本命令 ls   显示当前目录下内容 pwd当前目标名称 cd   移动目录 who 用户 rm 删除文件  rm ...
  • lxm5xiangni
  • lxm5xiangni
  • 2015年07月06日 20:41
  • 145

黑马程序员第六天

1 如何创建一个新的Activity     [1]Android的四大组件都要在清单文件里面配置   [2]如果你想让你的应用有多个启动图标 你的Activity需要这样配置       [3] A...
  • niohandsome
  • niohandsome
  • 2016年11月26日 20:35
  • 54

Python 学习第七天

(9)time(时间) import time print(time.time())1515463826.336823 time.time()返回当前时间的时间戳(1970纪元后经过的浮点秒数)。...
  • qq_39231690
  • qq_39231690
  • 2018年01月09日 10:13
  • 17

淘淘商城第六天

1   课程计划 1、前台系统搭建 a)        Taotao-rest:服务层没有jsp页面 b)       Taotao-portal:门户,表现层。 2、首页分类列表展示 a)...
  • mathlpz126
  • mathlpz126
  • 2017年05月26日 23:08
  • 301

## 项目第六天 ##

FastJson工具类的使用(扩展的知识) FastJson工具类的使用 1. 把对象或者集合转换成json的字符串 * JsonLib工具类,把对象转换成json的字符串,(JS...
  • qq_32332777
  • qq_32332777
  • 2018年01月07日 17:21
  • 91

【黑马程序员】面向对象(二) 第六天

-------  android培训、java培训、java学习型技术博客、期待与您交流! ---------- 知识点 (来自百度百科)有时你希望定义一个类成员,使它的使用完全独立于该类的任...
  • yi_remember
  • yi_remember
  • 2013年03月12日 10:59
  • 553

黑马程序员的第六天

------- android培训、java培训、期待与您交流! ----------  UDP 键盘录入方式数据:为了重复接收可以添加一个while(true)循环,但是创建DatapramSoc...
  • qianweiweisimon
  • qianweiweisimon
  • 2013年05月12日 22:34
  • 365

黑马程序员 —— 面向对象(第六天)

------- android培训、java培训、期待与您交流! ---------- 一  static关键字 1.PPT内容 1.static 关键字:用于修饰成员(成员变量...
  • Lin1i1y
  • Lin1i1y
  • 2015年02月02日 15:48
  • 388

黑马程序员--- 学习笔记(第六天)

static关键字 静态:static 用法:是一个修饰符,用于修饰成员(成员变量,成员函数) 当成员被静态所修饰后,就多了一种调用方法,除了可以用被对象调用外,还可以 直接被类名调用...
  • u012422158
  • u012422158
  • 2014年03月31日 09:15
  • 759
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马程序员_第六天
举报原因:
原因补充:

(最多只允许输入30个字)