Java内部类的访问规则】的更多相关文章

1.内部类可以直接访问外部类中的成员,包括私有      原因:因为在内部类中持有一个外部类的应用,格式:外部类.this class Outer {     private int x = 1; class Inner {         int x = 2;         public void seeOuter() {              int x = 3;              System.out.println(x);              System.out.p…
01.代码如下: package TIANPAN; class Outer { // 外部类 private String msg = "Hello World !"; class Inner { // 定义一个内部类 private String info = "世界,你好!"; // 内部类的私有属性 public void print() { System.out.println(msg); // 直接访问外部类的私有属性 } } public void fu…
01.代码如下: package TIANPAN; class Outer { // 外部类 private String msg = "Hello World !"; public void fun(int num) { // 外部类普通方法 double score = 99.9; // 方法变量 class Inner { // 方法中定义的内部类 public void print() { System.out.println("属性:" + Outer.t…
JAVA之旅(九)--Object类,equals,toString,getClass,内部类访问规则,静态内部类,内部类原则,匿名内部类 天天被一些琐事骚扰,学习还得继续 一.Object类 Object是什么呢?我们可以翻阅JAVA API文档看他的介绍 上面介绍说,object是类层次结构的根类,也就是超类 Object:是所有对象的直接后者间继承关系,传说中的老祖宗,你父亲还有父亲,你父亲的父亲还有父亲是爷爷,这是继承关系,但是你的祖宗却只有一位,该类中定义的肯定是所有对象都具备的功能…
框架图 内部类 将一个类定义在另一个类的里面,里面那个类就称为内部类(也叫内置类或嵌套类). 内部类的访问规则:1.内部类可以直接访问外部类中的成员,包括私有成员.    之所以可以直接访问外部类中的成员,是因为内部类中持有了一个外部类的引用,格式 外部类名.this2.外部类要访问内部类,必须建立内部类对象. class InnerClassDemo { public static void main(String[] args) { //外部其他类直接访问内部类中的成员.格式写法 Outer…
如果大家想了解更多的知识和技术,大家可以 搜索我的公众号:理想二旬不止 (尾部有二维码)或者访问我的 个人技术博客 www.ideal-20.cn 这样阅读起来会更加舒适一些 非常高兴与大家交流,学习~ 同时公众号中更新了 关于内部类的使用场景等文章,同时对文章一点点小错误进行了纠正 内部类 (一) 概述 把类定义在另一个类的内部,该类就被称为内部类. 举例:把类Inner定义在类Outer中,类Inner就被称为内部类. class Outer { class Inner { } } (二)…
/*内部类的访问规则:1,内部类可以直接访问外部类中的成员,包括私有.    之所以可以直接访问外部类中的成员,是因为内部类中持有了一个外部类的引用,格式 外部类名.this2,外部类要访问内部类,必须建立内部类对象. 访问格式:1,当内部类定义在外部类的成员位置上,而且非私有,可以在外部其他类中.可以直接建立内部类对象.格式    外部类名.内部类名  变量名 = 外部类对象.内部类对象;    Outer.Inner in = new Outer().new Inner(); 2,当内部类在…
java内部类总结 简单来说,内部类就是在我们所熟悉的类中的里面再定义一个类 为什么需要内部类? 当我们描述事物时,事物之中还有事物,我们就用内部类描述事物 因为内部事物在使用外部事物的内容 我举一个例子 人体有心脏,血液,肝,脾,肺-……那么心脏该如何定义? 我们应该定义心脏为内部类,因为它在使用外部类(人体)的血液,氧气…… 实例1:内部类的基本结构 class Out /*外部类*/ { private int x=3; class In /*内部类*/ { private int y p…
https://blog.csdn.net/z55887/article/details/49229491 先抛出让我疑惑了很久的一个问题 编程时,在线程中使用局部变量时候经常编译器会提示:局部变量必须声明为final package test; public class ThreadTest { public void function(String a) { new Thread(){ @Override public void run() { System.out.println(a);…
好文转载:http://blog.csdn.net/zhangjg_blog/article/details/19996629 开篇 在我的上一篇博客 深入理解Java中为什么内部类可以访问外部类的成员  中, 通过使用javap工具反编译内部类的字节码, 我们知道了为什么内部类中可以访问外部类的成员, 其实是编译器在编译内部类的class文件时,偷偷做了一些工作, 使内部类持有外部类的引用, 并且通过在构造方法上添加参数注入这个引用, 在调用构造方法时默认传入了外部类的引用. 我们之所以感到疑…