• 包的定义和导入,系统常用的包


    包的定义

    package是在使用多个类和接口的时候,为了避免名字重复而采用的一种措施,直接在程序中加入package关键字即可。

    包的定义格式:

     package 包名称.子包名称;

    package org.lxh.demo08 ;    // 定义一个包
    class Demo{
        public String getInfo(){
            return "Hello World!!!" ;
        }
    };
    public class PackageDemo01{
        public static void main(String args[]){
            System.out.println(new Demo().getInfo());
        }
    };

    定义包之后,实际上,类名称就是:包.类名称。

    所谓的包实际上就是一个文件夹,一个*.class文件要保存在一个文件夹中。

    包的导入

    import语句:

    当一个包的class文件需要使用另一个包的class文件,就需要使用导入指令。

    Demo.java:

    package org.lxh.demo08.a ;
    class Demo{
        public String getContent(){
            return "MLDN LXH" ;
        }
    };

    ImportDemo.java;

    package org.lxh.demo08.b ;    // 放在不同的包中
    import org.lxh.demo08.a.* ;    // 导入不同包中的Demo类
    public class ImportDemo01{
        public static void main(String args[]){
            System.out.println(new Demo().getInfo()) ;
        }
    };

    编译的时候,应该先编译Demo.java类,之后再编译ImportDemo.java,因为后者使用了前者的类。

    这时编译出现以下错误:

    Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
        The type Demo is not visible
    
        at org.lxh.demo08.b.ImportDemo01.main(ImportDemo01.java:7)

    也就是Demo类不可见,因为Demo类的访问类型不是public,所以要修改Demo类为public类型。

    package org.lxh.demo08.a;
    
    public class Demo {
    
        public String getInfo(){
            return "Hello World!!!" ;
        }
    }

    运行结果:

    Hello World!!!

    class与public class完整声明

    一个类声明为public class 则文件名称必须与类名称一致,而且一个类中只能有一个public class,如果使用class声明一个类,则类名称可以与

    文件名称不一致,但是执行的时候必须执行生成的class文件。

    如果一个类只在本包访问,不需要被外包访问,则直接声明成class即可,而如果一个类需要被外包访问,则必须声明为public class

    假设要导入一个包中很多类,直接使用"*"。

    系统常见包

    JAVA新特性-静态导入

    如果一个类中全部是用static声明的静态方法,则导入的时候就可以直接使用“import static”格式导入

    导入格式如下:import static 包.类。*;

    调用里面的方法,可以直接调用,如下:

    package org.lxh.demo08.e ;
    public class Operate{                            // 里面的方法全部都是static类型
        public static int add(int i,int j) {        // 加法操作
            return i + j ;
        }
        public static int sub(int i,int j) {        // 减法操作
            return i - j ;
        }
        public static int mul(int i,int j) {        // 乘法操作
            return i * j ;
        }
        public static int div(int i,int j) {        // 除法操作
            return i / j ;
        }
    };

    使用静态导入方式:import static 包。类。*;

    package org.lxh.demo08.f ;
    import static org.lxh.demo08.e.Operate.* ;    // 静态导入
    public class StaticImportDemo{
        public static void main(String args[]){
            System.out.println("3 + 3 = " + add(3,3)) ;    // 直接调用静态方法
            System.out.println("3 - 2 = " + sub(3,2)) ;    // 直接调用静态方法
            System.out.println("3 * 3 = " + mul(3,3)) ;    // 直接调用静态方法
            System.out.println("3 / 3 = " + div(3,3)) ;    // 直接调用静态方法
        }
    };

    jar命令

    总结

  • 相关阅读:
    python3+requests接口自动化-其他接口封装
    python3+requests接口自动化-登陆模块封装
    python3+requests接口自动化-测试登陆
    python3+requests接口自动化-日志封装
    python3+requests接口自动化-配置文件
    python3接口自动化-run_all_case
    python3+requests接口自动化session操作
    selenium自动化-数据驱动2
    js弹出对话框
    "System.StackOverflowException"类型的未经处理的异常在SharingPlatform.dll中发生
  • 原文地址:https://www.cnblogs.com/alsf/p/5634771.html
Copyright © 2020-2023  润新知