Java内部类三部曲之成员内部类
来源:互联网 发布:淘宝宅腐仓 编辑:程序博客网 时间:2024/06/05 19:04
public class InnerDemo {
/**
* 内部类(成员、静态、匿名、局部内部类)就是将一个类定义在另一个类的内部 特点:
* 内部类可以很好的实现隐藏,可是使用protect、private修饰符 内部类可以直接访问外部类的所有成员,包括私有的成员
* 反之,外部类不能直接访问内部类的成员,必须首先要建立内部类的对象才可以访问 间接实现多继承,避免修改接口而实现同一个类中两种同名方法的调用
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
// 创建外部类对象
Outer1 outer = new Outer1();
// 创建内部类的对象
Outer1.MemberInner inner = outer.new MemberInner();
// 调用内部类的方法打印
inner.innershow();
// outer.outershow();
}
}
class Outer1 {
private String name = "张三";
private int num1 = 10;
public void outershow() {
System.out.println(name);
System.out.println(num1);
// 创建内部类
// MemberInner inner=new MemberInner();
// inner.innershow();
// 外部类不能直接访问内部类的成员
// System.out.println(num2);
// innershow();
}
public class MemberInner {
/**
* 成员内部类属于外部类的实例成员 成员内部类可以使用public、private、default、protect权限修饰符。
* 在成员内部类中访问外部类的成员方法和属性,要使用“外部类名.this.成员方法”和“外部类名.this.成员属性”的形式
* 创建成员内部类的实例使用“外部类名.内部类名 实例名=外部类实例名.new 内部类构造方法(参数)的形式”
*/
private String name = "李四";
private int num2 = 20;
public void innershow() {
System.out.println(name);
System.out.println(num2);
// 访问外部类里面私有的属性
System.out.println(Outer1.this.name);
// 先在内部类里面找,找不到再去外部类找,规范写法要加外部类.this
System.out.println(num1);
// 访问外部类里面方法
// Outer1.this.outershow();
}
}
}
阅读全文
0 0
- Java内部类三部曲之成员内部类
- Java内部类之成员内部类
- java内部类之成员内部类、静态内部类
- Java内部类三部曲之静态内部类
- Java内部类三部曲之匿名类
- Java 成员内部类
- Java成员内部类
- java成员内部类
- java-成员内部类
- java成员内部类
- java中内部类之成员内部类
- Java的内部类之成员内部类
- JAVA中的内部类--成员内部类
- java 内部类(成员内部类)
- java 内部类(成员内部类)
- java 成员内部类 局部内部类,匿名内部类
- Java 内部类(成员内部类、局部内部类、静态内部类和匿名内部类)
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- android 语音播放 听筒 扬声器 选择
- 为什么我注入mapper为null啊?
- Exception in thread "main" java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveExcept
- 职责链模式
- vs调用Qt
- Java内部类三部曲之成员内部类
- 计算机网络基于UDP的服务器和客户端
- Spring学习笔记5-MVC-1
- Spring Boot : 创建简单Spring Boot项目(一)
- ofbiz初级教程
- 基于压缩的实时目标追踪(CT)
- 文件相关工具类
- R极简教程-6:基本语法
- 互联网商业模式