定义一个Father和Child类,并进行测试

1. 题目描述

定义一个Father和Child类,并进行测试.
要求如下:
 1)Father类为外部类,类中定义一个私有的String类型的属性name,name的值为“zhangjun”。
 2)Child类为Father类的内部类,其中定义一个introFather()方法,方法中调用Father类的name属性。
 3)定义一个测试类Test,在Test类的main()方法中,创建Child对象,并调用introFather ()方法。

2. 考点如下

2.1 内部类的简单定义

 在类里面定义的类称为内部类,内部类是外部类的一个成员。

2.2 内部类与外部类的关系

 内部类可以直接访问外部类的元素(包括私有域),但是外部类不能直接访问内部的元素。

2.3 创建内部类

 在这里给大家写一下两种内部类的创建方式:
a. 在外部类外部创建内部类语法

外部类.内部类 内部类对象 = new 外部类().new 内部类();

举例:
	Outter.Inner in = new Outter().new Inner();

b. 在外部类内部创建内部类语法
在外部类内部创建内部类,就像普通对象一样直接创建

Inner in = new Inner();

3. 题目解答

本道题主要是在外部类的外部创建内部类,所以使用第一种方法创建内部类。

class Father{
    private String name = "zhangjun";
    // 内部类
    class Child{
        public void introFather(){
            System.out.println(name);   // 调用Father类的name属性
        }
    }
}
public class Test{
    public static void main(String[] args){
        Father.Child child = new Father().new Child();
        child.introFather();
    }
}

运行结果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值