zoukankan      html  css  js  c++  java
  • JAVA_SE基础——56.包的创建

    接下来我来给大家讲下……包 ,

    先看一段代码

    class Demo1{
    	public static void main(String[] args) {
    		System.out.println("这个是Demo1的main方法");
    	}
    }
    
    然后再新建一个Java文件,然后类名也叫Demo1,但是文件名叫Demo2

    class Demo1 {
    	public static void main(String[] args) {
    		System.out.println("这个是Demo2的main方法");
    	}
    }
    

    如果我先编译Demo1 再编译Demo2  然后运行Demo1   结果会是什么?  会输出:这个是Demo1的main方法 呢, 还是会输出:这个是Demo2的main方法。

    运行结果:

    这个是Demo2的main方法


    大家有没有想过为什么???

    因为,后编译的这个文件 是不是也会产生Demo1.class的这个文件   后编译的会把前面编译的覆盖掉


    包:就可以解决类名重复这个问题了。

    包的作用:

    1.解决类名重复产生冲突的问题。

    2.便于软件版本的发布。

    包的概念:

    windows一个文件夹中 是不是不可以出现两个一样名字的文件,那在windows中又是如何解决的?那就是创建文件夹,所以java中的包就相当于windows文件夹。


    定义包的格式:

    package 包名;


    包语句要注意的事项:
    1. package语句必须位于java文件中中第一个语句。
    2. 如果一个类加上了包语句,那么该类的完整类名就是: 包名.类名
    3. 一个java文件只能有一个包语句。


    下面来段代码创建个包试试:

    package a;
    
    class Demo1 
    {
    	
    	public static void main(String[] args) 
    	{
    		System.out.println("这个是Demo1的main方法...");
    	}
    }
    然后编译,结果如下图:


    这提示什么意思?  异常:NoClassDefFoundError;   找不到类名的意思


    大家看包语句要注意的事项的第二点。那这个类完整类名就是:a.Demo1

    先创建一个叫做a的文件夹,把Demo1.class 拖进去,


    然后运行


    新建文件夹的方法是不是觉得很烦,那我继续说另外一种方法~

    javac -d 指定类文件的存放路径   java源文件

    或者 javac -d . java源文件    (.的意思是当前文件夹路径,,就是Demo1的路径)



    交流企鹅:654249738,和自学者交流群:517284938


  • 相关阅读:
    数据库特性之原子性和一致性
    [linux] 输出重定向与后台运行
    shell编程其实真的很简单(一)
    Java8中的流操作-基本使用&性能测试
    Hadoop到底是干什么用的?
    为什么要有文件系统?文件系统都有哪些种类?
    MySQL insert value与values
    MySQL create语句
    fiddler抓包-简单易操作(二)
    jmeter文件目录说明(一)
  • 原文地址:https://www.cnblogs.com/Jhaiha0/p/8465285.html
Copyright © 2011-2022 走看看