码迷,mamicode.com
首页 > 其他好文 > 详细

内部类练习题(外部类访问内部类成员、内部类访问外部类成员、顶级类访问内部类成员)

时间:2019-04-29 21:08:00      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:void   sys   练习题   外部   定义   int   调用   weight   bsp   

package com.Summer_0429.cn;

/**
 * @author Summer
 * 内部类实例:
 * 定义一只猫类,猫有:
 * 1、重量
 * 2、猫的身体:
 *     1)颜色
 *     2)显示猫的身体的信息();
 * 3、显示猫的整体信息();
 * 要求:创建一只小猫,显示它的整体信息。
 *
 */
class Cat{
    private double weight;
    public Cat(double weight){
        this.weight = weight;
    }
    //内部类:成员内部类
    class CatBody{
        private String color;
        public CatBody(String color) {
            this.color = color;
        }
        public void show(){
            //内部类中可以直接访问外部类的成员
            //每一个内部类对象中都会隐藏一个外部类对象,外部类.this
            //System.out.println("颜色:"+color+Cat.this.weight);
            System.out.println("颜色:"+color+weight);
        }
        
    }
    public void display(){//外部类
        //外部类,访问内部类的成员
        CatBody body = new CatBody("白色");
        body.show();
        System.out.println("体重:"+weight);
    }
    
}

public class TestInner {

    public static void main(String[] args) {
        Cat cat = new Cat(10);
        cat.display();
        //在一个顶级类中调用内部类方法的语法结构,需要一个外部类的实例对象来创建
        Cat.CatBody body = cat.new CatBody("黑色");
        body.show();
    }

}

 

内部类练习题(外部类访问内部类成员、内部类访问外部类成员、顶级类访问内部类成员)

标签:void   sys   练习题   外部   定义   int   调用   weight   bsp   

原文地址:https://www.cnblogs.com/summerdata/p/10792586.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!