zoukankan      html  css  js  c++  java
  • Java基础--第十一天

    1:包
        (1)包其实就是文件夹。用于区分相同的类名。
        (2)格式:
          package 包名1.包名2...;
        (3)带包的编译和运行
            一、手动建包:
              1,编译:javac PackageDemo.java
              2,手动建包:建三个层次包:cn(itcast(com))
              3,运行:java cn.itcast.com.PackageDemo
            二、自动建包:
              1,编译:javac -d . cn.itcast.com.PackageDemo.java
                -d后的.表示当前目录
              2,运行:java cn.itcast.com.PackageDemo

    2:导包
        (1)一般来说,用一个类,需要用该类的全路径名称。
          如果多个地方使用,就比较麻烦,所以java提供了导包操作。
        (2)格式:
          import 包名1.包名2...类名;

          //下面这种属于把指定包下的类都导入。这种用法不推荐。我们应该用谁导谁。
            import 包名1.包名2...*;
        (3)package,import,class的顺序
            package -- import -- class

    3:四种权限修饰符
                本类   同包(无关类或者子类)   不同包(子类)   不同包(无关类)
          private    Y
          默认     Y           Y
          protected  Y           Y          Y
          public      Y           Y                         Y        Y

        推荐:
          成员变量 private
          构造方法 public
          成员方法 public

    4:不同修饰符修饰的内容(掌握 和内部类无关)
                类     成员变量     成员方法     构造方法
          private    Y         Y        Y
          默认     Y        Y        Y         Y
          protected   Y               Y        Y
          public     Y         Y         Y         Y
          abstract   Y               Y
          static             Y        Y
          final      Y       Y       Y

        注意,常见规则如下:
          所有的类都用public修饰。并且,在一个java文件中,只写一个类。

          所有的成员变量用private修饰。

          所有的成员方法用public修饰。
          如果是抽象类或者接口:
            public abstract + ...

            所有的构造方法用public修饰。
            如果类是工具类或者单例类:
                构造用private修饰


    5:内部类
        (1)把类定义在一个类的内部。
        (2)访问特点:
            1:内部类可以直接访问外部类成员,包括私有
            2:外部类要想访问内部类成员,必须创建对象。
        (3)内部类分类:
            1:成员位置  成员内部类
              private 安全
              static 方便调用
            2:局部位置  局部内部类
              定义在方法中。

              局部内部类访问局部变量必须加final修饰。
              延迟生命周期。
        (4)匿名内部类
            1:是定义在局部位置的没有名字的内部类。
            2:前提
              存在一个类,抽象类,或者接口。
            3:格式
              new 类或者接口名()
              {
                重写方法;
              }

              本质理解:其实这是一个继承类或者实现接口的匿名的子类对象。
            4:使用
                当你看到方法的形式参数是接口或者抽象类的时候。
                用匿名内部类改进。(集合,IO,awt)

  • 相关阅读:
    OpenMP vs WinSxS
    JIT, dynarec and binary translation
    VC++2010 bug
    控制和释放共享内存块
    分配和释放信号量
    代码列表5.1 (shm.c) 尝试共享内存
    绑定和脱离
    信号量
    每个字段动态添加一个随机数
    最近做了一个红底鞋类电商网站
  • 原文地址:https://www.cnblogs.com/zhidianhcuan/p/4364215.html
Copyright © 2011-2022 走看看