zoukankan      html  css  js  c++  java
  • Java小笔记

    1:Java类中的成员变量名和方法名是可以相同的。

    public class Test {
    int m=0;
    int m(){ return 1;}
    public static void main(String[] args){
    Test t = new Test();
    System.out.println(t.m);
    System.out.println(t.m());

    }
    }
    2:实例化非静态内部类的方法如下: 外围类.内部类 内部类对象的引用 = 外围类对象.new 内部类(); 
    如:
    1. public class Outer { 
    2.     public static void main(String[] args) { 
    3.         Outer outer = new Outer(); 
    4.         Outer.Inner inner = outer.new Inner(); 
    5.         inner.print("Outer.new"); 
    6.  
    7.         inner = outer.getInner(); 
    8.         inner.print("Outer.get"); 
    9.     } 
    10.  
    11.     // 个人推荐使用getxxx()来获取成员内部类,尤其是该内部类的构造函数无参数时 
    12.     public Inner getInner() { 
    13.         return new Inner(); 
    14.     } 
    15.  
    16.     public class Inner { 
    17.         public void print(String str) { 
    18.             System.out.println(str); 
    19.         } 
    20.     } 
    3、什么是嵌套类及内部类?

        可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:
    静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为
    内部类(inner)。嵌套类从JDK1.1开始引入。其中inner类又可分为三种:

        其一、在一个类(外部类)中直接定义的内部类;
        其二、在一个方法(外部类的方法)中定义的内部类;
        其三、匿名内部类。

    4:1、静态内部类也叫嵌套类,用这个名字给他定义是更加形象的。意思是说内部类和外部类的关系只是层次嵌套关系,所以只是在创建类文件的时候类文件名是如下形式:outer$inner.java,在使用方面完全和两个普通类一样。
    2、一般内部类在我看来才是真正的内部类,他们不仅有着嵌套关系,更重要的是内部类可以获得外部类的引用从而实现回调。而且通过创建内部类还可已让java实现真正的多继承!(interface名叫接口,顾名思义,他就是实现接口的,让一个类继承多个接口实现多继承是不合适的)



  • 相关阅读:
    hbase 由于zookeeper问题导致连接失败问题
    Python 判断文件/目录是否存在
    mysql5.7设置默认的字符集
    mysql 提示ssl问题
    Ubuntu 安装MySQL报共享库找不到
    hbase 监控指标项
    大量数据通过Phoenix插入到hbase报错记录(2)
    通过phoenix导入数据到hbase出错记录
    mysql5.7 之 sql_mode=only_full_group_by问题
    Hadoop 在启动或者停止的时候需要输入yes确认问题
  • 原文地址:https://www.cnblogs.com/hsqdboke/p/5205843.html
Copyright © 2011-2022 走看看