首页 > Java > java教程 > 正文

java 内部类,匿名内部类

高洛峰
发布: 2016-12-15 12:51:58
原创
1777人浏览过

java 内部类分为4种:

1)静态内部类:static修饰的类叫做静态类,把静态类放到一个类的内部,就叫做静态内部类

特点:可以访问外界:静态方法/静态属性,不能访问实例资源

案例:

import inner.Foo.Koo;//一定要把Koo静态内部类导入进来

立即学习Java免费学习笔记(深入)”;

public class Demo9 {

public static void main(String[] args) {

Koo koo = new Koo();

koo.add();

}

网龙b2b仿阿里巴巴电子商务平台
网龙b2b仿阿里巴巴电子商务平台

本系统经过多次升级改造,系统内核经过多次优化组合,已经具备相对比较方便快捷的个性化定制的特性,用户部署完毕以后,按照自己的运营要求,可实现快速定制会费管理,支持在线缴费和退费功能财富中心,管理会员的诚信度数据单客户多用户登录管理全部信息支持审批和排名不同的会员级别有不同的信息发布权限企业站单独生成,企业自主决定更新企业站信息留言、询价、报价统一管理,分系统查看分类信息参数化管理,支持多样分类信息,

网龙b2b仿阿里巴巴电子商务平台 0
查看详情 网龙b2b仿阿里巴巴电子商务平台

}

class Foo{

int a = 12;//实例变量

static int aa=16;

public static void show(){ System.out.println("静态的方法");}

//静态内部类

static class Koo{

public void add(){

// System.out.println(a); 静态内部类不能访问实例资源(变量)

System.out.println(aa);

show();//静态内部类可以访问外界的静态属性和方法

}

}

}

2)成员内部类:在一个类的内部,直接定义了一个不用static修饰的类,当创建成员内部类对象的时候,外部类要先创建出来。

特点:成员内部类,可以访问外界的属性和方法

案例:

import inner.Foo1.Koo1;

public class Demo10 {

public static void main(String[] args) {

//Koo1 koo1 = new Koo1();要创建成员内部类,则必须要先创建外部类对象

Foo1 foo1 = new Foo1();

//记住(笔试会考)

Koo1 koo1 = foo1.new Koo1();

koo1.show();

}

}

class Foo1{

int a =12;

static int aa = 16;

class Koo1{

void show(){

System.out.println(a+" , "+aa);

}

}

}

3)局部内部类:使用非常的少,特点在一个方法内定义一个类(企业开发中及其少用)

特点:局部内部类,在引用外界的变量,该变量必须要使用final修饰

案例:

public class Demo11 {

public static void main(String[] args) {

final int a = 12;

final int b = 13;

class Foo2{

int c = 16;

public int add(){

//在局部内部类中,引用外界的变量,则变量必须用final修饰

return a+b+c;

}

}

Foo2 foo2 = new Foo2();

System.out.println(foo2.add());

}

}

4)匿名内部类:对原来的类的一个继承

特点:跟接口/抽象类结合使用

eg  new 类名/接口名 {

重写方法

};

案例:

public class Demo1 {

public static void main(String[] args) {

 Koo koo = new Koo(){

// 可以重写方法

  public String toString() {

   return "生成了一个Koo的对象";

  }

// 在匿名内部类里面不可以创建新的方法  

//   public void show(){

//    System.out.println("liu");

//   }

 };

 System.out.println(koo);

//  koo.show();

}

}

class Koo{

}

更多java 内部类,匿名内部类 相关文章请关注PHP中文网!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号