JAVA 匿名对象

/*
匿名对象:
没有名字的对象
匿名对象的使用方式之一:
当对对象方法只调用一次时,我们可以用匿名对象来完成,比较简化。
匿名对象的使用方式之二:
匿名对象可以被当做实参传递
*/
class Car{
    String color;
    void start(){
        System.out.println("汽车被开动");
    }
}
public class Test{
    public static void main(String[] args){
        //有名对象调用
        Car a    =    new Car();
        a.start();
        //匿名对象调用
        new Car().start();
        System.out.println("=======================");
        new Car().color    =    "红色";    //给匿名对象的属性赋值是没有意义的
        new Car().start();
        System.out.println("=======================");
        //作为实参传递
        print(new Car());
    }
    static void print(Car c){
        c.start();
    }
}
时间: 2024-11-05 16:26:12

JAVA 匿名对象的相关文章

java匿名对象

java学习面向对象之匿名内部类 之前我们提到“匿名”这个字眼的时候,是在学习new对象的时候,创建匿名对象的时候用到的,之所以说是匿名,是因为直接创建对象,而没有把这个对象赋值给某个值,才称之为匿名. 匿名对象回顾: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 class NoObject {     void method()     {         System.out.println("Hello NoNam

java匿名对象_面向对象

class Student{ public void tell(){ System.out.println("Hello jikexueyuan"); } public void main{ Student stu=new Student(); stu.tell(); //匿名对象可以直接new 但是只能使用一次 new Student.tell(); } }

java 匿名对象,内部类,修饰符,代码块

匿名对象是在建对象时只有创建对象的语句方法而没有把对象的地址赋值给变量,匿名对象只能调用一次方法,想再调用时需要再创建一个新的匿名对象 创建普通对象:Person p =new Person(); 创建匿名对象:new Person().方法名(); new Person().setName("王无"); 内部类:写在其他类的内部或者成员位置或局部位置,这是其他类叫外部类.在内部类中可以访问外部类的属性. 当内部类写在成员位置时,叫成员内部类,写在局部位置时,叫局部内部类. 成员内部类

java匿名类和匿名对象及this的其他用法

/* 匿名内部类:就是内部类的简写格式. 必须前提:内部类必须继承或者实现一个类或者接口. 匿名内部类其实就是一个匿名 子类对象. 格式:new 父类对象 or 接口(){ 子类内容:(覆盖父类的, 而且可以增加自己的方法) }//相当于将 继承父类 和 new 的过程 写到了一起有某有!很方便有某有! */ class Outer{ int num; public Outer(){ num = 5; } class Inner{ int num; public Inner(){ num = 1

JAVA之旅(四)——面向对象思想,成员/局部变量,匿名对象,封装 , private,构造方法,构造代码块

JAVA之旅(四)--面向对象思想,成员/局部变量,匿名对象,封装 , private,构造方法,构造代码块 加油吧,节奏得快点了 1.概述 上篇幅也是讲了这点,这篇幅就着重的讲一下思想和案例 就拿买电脑来说吧,首先,你不懂电脑,你去电脑城买电脑,和大象装冰箱里一样,是什么步骤?咨询 砍价 ,谈妥了就那电脑走人,对吧,这就是面向过程的思想,而面向对象是:你有一个哥们,他懂电脑,什么都会,你只要带他去,就行,你这个哥们就是对象,在JAVA中,我们就是操作一个对象去完成各种各样的操作的,这就是面向对

JAVA笔记2__类/封闭性/构造方法/方法的重载/匿名对象

public class Main { public static void main(String[] args) { Chicken c1 = new Chicken(); Chicken c2 = null; c1.eat(); System.out.println(c1.age); c2 = c1; c2.eat(); } } class Chicken{ int color; char sex; int age; void eat(){ System.out.println("chik

Java基础学习笔记十 Java基础语法之final、static、匿名对象、内部类

final关键字 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可以对其中的方法进行重写,那怎么解决呢?要解决上述的这些问题,需要使用到一个关键字final,final的意思为最终,不可变.final是个修饰符,它可以用来修饰类,类的成员,以及局部变量. final的特点 final修饰类不可以被继承,但是可以继承其他类. class Yy {} final clas

C++不能显式调用构造函数,会生成匿名对象,这点与Java完全不一样!

Java有super(),但是C++里面没有.看一下这段代码: class A { public: A() { printf("A() \n"); } A(int d) { printf("A(int) \n"); A(); }  // 不能这样调用构造函数!会生成另一个匿名对象 ~A() { printf(" ~A \n"); } void ddd() { printf(" ddd \n"); } }; int main(i

java学习--基础知识进阶第二天--继承、匿名对象&final、抽象类

今日内容介绍 u 继承 u 抽象类 第1章 继承 1.1 继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系. 1.2 继承的格式&使用  在程序中,如果想声明一个类继承另一个类,需要使用extends关键字. 格式: class 子类 extends 父类 {} 1.2.1 案例代码一: package com.itheima_01; /* * 继承:多个类有共同的成员变量和成员方法,抽取到另外一个类