zoukankan      html  css  js  c++  java
  • Java 内部类

      内部类是一种非常有用的特性,因为它允许你把一些逻辑相关的类组织在一起,并且控制位于内部的类的可视性。但是内部类是完全不同于组合的概念。

    在最初,内部类看起来就像是一种代码隐藏机制:将类置于其他类的内部。但是,内部类远不止于此,它了解外围类,并能与之通讯,而且你用的内部类写出的代码更优雅而清新。

     1 package innerclasses;
     2 
     3 public class Parcel2 {
     4     class Contents{
     5         private int i = 11;
     6         public int value(){
     7             return i;
     8         }
     9     }
    10     
    11      class Destinations{
    12         private String lable1;
    13         Destinations(String whereTo){
    14             lable1 = whereTo;
    15         }
    16         String reabLable1(){
    17             return lable1;
    18         }
    19         
    20     }
    21      public Destinations to(String s){
    22             return new Destinations(s);
    23         }    
    24      public Contents contents(){
    25             return new Contents();
    26         }
    27      public void ship(String dest){
    28             Contents c = new Contents();
    29             Destinations d = new Destinations(dest);
    30             System.out.println(d.reabLable1());
    31         }
    32      
    33      public static void main(String[] args){
    34             Parcel2 p = new Parcel2();
    35             p.ship("Tasmania");
    36             Parcel2 q =new Parcel2();
    37             Parcel2.Contents c = q.contents(); 
    38             Parcel2.Destinations d = q.to("Borneo");
    39         }
    40     
    41 }

    结果

     1 Tasmania 

    如果想从外部类的非静态方法之外的任意位置创建某个内部类对象,那么有必须像在main()中那样,具体的指明这个对象的类型:OuterClassName.InnerClassName。

  • 相关阅读:
    MySQL之增_insert-replace
    Linux如何配置bond
    行转列及列转行查询
    SELECT中常用的子查询操作
    SELECT中的多表连接
    MySQL最常用分组聚合函数
    SELECT中的if_case流程函数
    MySQL常用日期时间函数
    MySQL常用数值函数
    dnslog注入
  • 原文地址:https://www.cnblogs.com/fxyfirst/p/3788141.html
Copyright © 2011-2022 走看看