java基础06

来源:互联网 发布:华为手机彻底删除数据 编辑:程序博客网 时间:2024/05/02 02:10

package javademo;



//类的分装就是让属性不对外开放,需要通过方法来对属性操作;

public class TelePhone {

privatefloat seceen;

privatefloat cpu;

privatefloat mem;

private int  a = 33;//外部类的私有属性

static int b = 1;//外部类的静态变量;

publicclass Inner{

intb = 2;//内部类的成员属性

public void text()

{

System.out.println("访问外部类中的a:"+a);

System.out.println("访问内部类中的b:"+b);

System.out.println("访问外部类中的A:"+TelePhone.this.a);//访问外部类的成员属性a

}

}

public static void main(String[] args)

{

// 测试成员内部类

//外部类不能直接访问内部类的成员方法;

         TelePhone Tel = new TelePhone();//创建外部类对象,对象名为O

         Inner     Inte = Tel.new Inner();//使用外部类对象创建内部类对象,对象名为Inte

         Inte.text();//调用内部类对象的text方法;

         

         //**

         //测试静态内部类

         Sinner siner = new Sinner();

         siner.text();

         

         //**

         //测试方法内部类

         Tel.show();

}

/*

* 静态内部类是 static 修饰的内部类,这种内部类的特点是:


     * 1、 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问 


     * 2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员


     * 3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();

* */

//静态内部类

publicstatic class Sinner

{

int b = 2;//内部类的变量

public void text ()

{

System.out.println("访问外部类的b:"+TelePhone.b);

System.out.println("访问内部类中的b:"+b);

}

}

// 外部类的方法

publicvoid show()

{

final int a = 25;//常量

int b = 13;

// 方法内部类;

class MInner

{

intc = 2;//内部类中的变量;

public void print()

{

System.out.println("访问外部类方法中的常量a"+a);

System.out.println("访问方法内部类方法中的常量c"+c);

}

}

MInner mi =new MInner();

mi.print();

}

//3 方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,

//  即只在该方法内可以使用。

}


0 0
原创粉丝点击