匿名内部类

作用: 假如某个类只使用一次,则可以使用匿名内部类,无需再新建该类

我们上下代码:

package com.learn.chap03.sec16;

/**
* 定义接口
*/
public interface A {
public void a();
}
package com.learn.chap03.sec16;

public class B implements A{

    @Override
public void a() {
// TODO Auto-generated method stub
System.out.println("只使用一次");
} }
package com.learn.chap03.sec16;

public class Test {

    public void test(A a) {
a.a();
} public static void main(String[] args) {
Test t = new Test();
t.test(new B()); // 使用匿名内部类 咱不用再建B类
t.test(new A(){
@Override
public void a() {
System.out.println("匿名内部类,一次性使用!");
} }); }
}

运行结果:

只使用一次
匿名内部类,一次性使用!

包装类

   每个基本类型都有一个类,此类即为包装类。如图:

下面通过代码说明下:装箱与拆箱、自动装箱与自动拆箱、包装类的作用

 package com.learn.chap03.sec17;

 public class Demo1 {
public static void main(String[] args) {
int a = 1;
Integer i = new Integer(a); // 装箱 把基本变量变成对象变量
int b = i.intValue(); // 拆箱 把对象变量变成基本变量
System.out.println("a="+a+",i="+i+",b="+b);
}
}

运行结果

a=1,i=1,b=1

 package com.learn.chap03.sec17;

 public class Demo2 {
// 自动装箱和自动拆箱 从JDK1.5开始 引入
public static void main(String[] args) {
Integer i = 1; // 自动装箱的过程 自动把基本数据转换成对象
int m = i; // 自动拆箱 自动把对象转成基本数据
System.out.println("i="+i+",m="+m);
}
}

运行结果

i=1,m=1

 package com.learn.chap03.sec17;

 public class Demo3 {
// 包装类的作用
public static void main(String[] args) {
String a = "1";
String b = "2";
System.out.println("a+b="+(a+b));
int m = Integer.parseInt(a);
int n = Integer.parseInt(b);
System.out.println("a+b="+(m+n));
}
}

运行结果

a+b=12
a+b=3

Java之匿名内部类和包装类的更多相关文章

  1. Java基础——基本类型和包装类、基本类型和字符串之间的转换

    基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更 ...

  2. Java开发学习--Java 中基本类型和包装类之间的转换

    Java 中基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之 ...

  3. java中匿名内部类的匿名构造函数是怎么用的

    java中匿名内部类的匿名构造函数是怎么用的下面的例子说明匿名内部类的匿名构造函数的用法 例2.7.2_0interface FigureMark_to_win {    void whoAmI(); ...

  4. java学习之匿名内部类与包装类

    匿名内部类: 所谓匿名内部类,顾名思义指的就是定义在类内部的匿名类,现有的spring框架开发以及java图形界面都经常用到匿名内部类. 下面来看一个代码: interface A{ public v ...

  5. java 8增强的包装类

    ---恢复内容开始--- 1java为8个类型提供了对应的包装类.因为这8个类型并不是类或者对象,他们原本是不应该存在在java里的(这里说的只是原本),这里要强调的是,java允许把基本类型的值直接 ...

  6. Java基本类型与包装类

    存储方式及位置的不同,基本类型是直接存储变量的值保存在堆栈中能高效的存取,封装类型需要通过引用指向实例,具体的实例保存在堆中   Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型) ...

  7. 【Java入门提高篇】Day8 Java内部类——匿名内部类

    今天来看看另一个更加神奇的类--匿名内部类. 就像它的名字表示的那样,这个类是匿名的,用完之后,深藏功与名,就像扫地僧那样默默潜藏于深山之中.匿名内部类不仅没有名字,连class关键字都省掉了,而且匿 ...

  8. java基本数据类型及其包装类

    1.String类 String s1 = "hello world"; String s2 = "hello world"; String s3 = s1 + ...

  9. 【原】Java学习笔记024 - 包装类

    package cn.temptation; public class Sample01 { public static void main(String[] args) { // 之前对于基本数据类 ...

随机推荐

  1. mysql 习题

    习题1 1.创建一个库(dt55_mysql),在库下创建一张students表 (1)students表中的字段有:id(int类型),stuName(varchar类型),age(int类型),w ...

  2. 广义线性模型(GLM)

    一.广义线性模型概念 在讨论广义线性模型之前,先回顾一下基本线性模型,也就是线性回归. 在线性回归模型中的假设中,有两点需要提出: (1)假设因变量服从高斯分布:$Y={{\theta }^{T}}x ...

  3. LeetCode OJ:Integer to Roman(转换整数到罗马字符)

    Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 t ...

  4. Java.lang包的接口解读

    Java.lang包中提供了八个接口: 1.Appendable 能够被追加 char 序列和值的对象.如果某个类的实例打算接收来自 Formatter的格式化输出,那么该类必须实现 Appendab ...

  5. [置顶] Android ShareSDKQQ 第三方登录so easy?

    昨天群里有个群友看到我之前做的那个qq第三方登录怎么做的,于是乎思考了一下,还是决定写一篇博客记录下,其实都不难的,其实之前我又写到FaceBook的第三方登录不知道看下这Android集成FaceB ...

  6. OpenCV-Python cv2.imdecode()和cv2.imencode() 图片解码和编码

    cv2.imdecode()函数从指定的内存缓存中读取数据,并把数据转换(解码)成图像格式;主要用于从网络传输数据中恢复出图像. cv2.imencode()函数是将图片格式转换(编码)成流数据,赋值 ...

  7. (二)java环境搭建

    Java运行环境的搭建: 什么是JRE,什么是JDK? JRE:(java运行环境)包括jvm(java虚拟机)和java运行的核心类库,如果只是运行java程序,只需安装JRE JDK:(java开 ...

  8. window如何分区

    WD官方技术支持电话:800热线800-820-6682(请于周一至周五工作日期间使用固定电话拨打,不支持手机用户)手机用户请拨打400-627 6682. 链接:https://kuyusm.tma ...

  9. Jetty服务怎么配置,如何发布项目

    Jetty相对于Tomcat来时相对较轻,适合多并发且有较多实时通讯的系统,能够稳定的保持连接且占用资源相对较少.今天就简单介绍一下Jetty的配置及项目部署. 工具/原料 Jetty 电脑 Jett ...

  10. RabbitMQ学习系列一安装RabbitMQ服务

    RabbitMQ学习系列一:windows下安装RabbitMQ服务 http://www.80iter.com/blog/1437026462550244 Rabbit MQ 是建立在强大的Erla ...