修饰

一、static

    概念:
    
    注意:
    

二、final

    修饰的类不能被继承
    修饰的引用不能更改地址
    修饰的方法不能覆盖
    修饰的常量不能被更改

三、代码块

    代码块:常与局部变量进行使用
    构造代码块:类体中,方法外 每生成一个对象就调用一次,常用于配置文件
    静态代码块:类体中,方法外 加载类的时候调用,所有对象只调用一次

四、内部类

    4.1.概念
    
    4.2.形式
    4.2.1成员内部类:成员内部类可以直接访问外部类的私有成员

-------------------------------
public class Outer {
    private String name = "Outer";
    class Inner{
        public void showInfo() {

        System.out.println("inner:showInfo()");
        System.out.println(name);

        }
    }
}
----------------------------
public class Test01 {
    public static void main(String[] args) {

    Outer outer = new Outer();

    Outer.Inner inner = outer.new Inner();
    inner.showInfo();
    }
}


    4.2.2.静态内部类:成员内部类如果被static修饰变成静态内部类,作为外部类的一个静态成员而存在。

-------------------------------
public class Outer {
    private static String name = "Outer";
    static class Inner{
        public void showInfo() {
            System.out.println("static inner:showInfo()");
            System.out.println(name);
        }
    }
}

----------------------------
public class Test01 {
    public static void main(String[] args) {

    Outer.Inner inner = new Outer.Inner();
    inner.showInfo();
    }
}


    4.2.3.方法内部类:方法中的东西都是局部的,所以没有修饰符,出了堆栈就不认识,内部类中方法的局部变量只能访问

类当中的方法定义一个类,这个类在完成方法
----------------------------------
public class Outer{
       public void print(){
            Class Son{
                  public void showInfo(){
                        System.out.println("hhhh");
                  }
            }
            Son son=new Son();
            son.showInfo();
      }
}
-----------------------------------
main
Outer outer=new Outer();
outer.print();
      


    4.2.4.匿名内部类:要求有实现存在

public class Outer{
      void print(){
            class Son implements USB{
                  void install(){
                        System.out.println("hhh");
                      }
            }
            new Son().install();
      }
}

public class Outer{
       void print(){
            new USB(){
                  void install(){
                        System.out.println("hhh");
                      }
            }.install();
            //new Son)
      }
}
--------------------------------
main方法
Outer outer=new Outer();
outer.print();


返回课程体系

posted @ 2021-01-22 16:11  LinkYup  阅读(182)  评论(0编辑  收藏  举报