Android java中包的使用

news2024/12/23 10:44:00

一.包的使用

为了更好的实现项目中类的管理,提供包的概念。

package语句作为Java源文件的第一条语句,指明该文件中定义的类所在的包。(若缺省该语句,则指定为无名包)。

它的格式为:package 顶层包名.子包名 ;

二.java中主要的包

三.编译java中的包

package a.b.c.d;

public class Pack {
	public static void main(String args[]) {
		System.out.println("Hello, world!");
	}
}

编译运行:

root@ubuntu:/home/topeet/guyilian# javac -d . Pack.java 
root@ubuntu:/home/topeet/guyilian# ls
a  Pack.java
root@ubuntu:/home/topeet/guyilian# cd a/b/c/d
root@ubuntu:/home/topeet/guyilian/a/b/c/d# ls
Pack.class
root@ubuntu:/home/topeet/guyilian/a/b/c/d# cd ../../../..
root@ubuntu:/home/topeet/guyilian# java a.b.c.d.Pack
Hello, world!

四.使用java中的包

(1)为使用定义在不同包中的Java类,需用import语句来引入指定包层次下所需要的类或全部类,import语句告诉编译器到哪里去寻找类。
(2)语法格式:import 包名. 类名

实验:

root@ubuntu:/home/topeet/guyilian# vi lisi/Math.java 

package a.b.c.d1;

public class Math {
        public static int add(int x, int y) {
                return x + y;
        }
}
root@ubuntu:/home/topeet/guyilian# vi zhangsan/Math.java

package a.b.c.d2;

public class Math {
        public static int sub(int x, int y) {
                return x - y;
        }

        public static int add(int x, int y) {
                return x + y + 2;
        }

}
root@ubuntu:/home/topeet/guyilian# vi zhangsan/Print.java

package a.b.c.d2;

public class Print {
        public static void printInfo() {
                System.out.println("package: a.b.c.d2");
        }

}
root@ubuntu:/home/topeet/guyilian# vi Pack.java

import a.b.c.d1.*;
import a.b.c.d2.*;


public class Pack {
        public static void main(String args[]) {
                /* add */
                System.out.println(a.b.c.d1.Math.add(1,2));
                System.out.println(a.b.c.d2.Math.add(1,2));

                /* sub */
                System.out.println(a.b.c.d2.Math.sub(1,2));

                a.b.c.d2.Print.printInfo();
                Print.printInfo();
        }
}

编译:

root@ubuntu:/home/topeet/guyilian# javac -d . lisi/Math.java 
root@ubuntu:/home/topeet/guyilian# javac -d . zhangsan/Math.java 
root@ubuntu:/home/topeet/guyilian# javac -d ./zhangsan/Print.java
root@ubuntu:/home/topeet/guyilian# javac Pack.java
root@ubuntu:/home/topeet/guyilian# java Pack
3
5
-1
package: a.b.c.d2
package: a.b.c.d2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1468837.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Leetcode3039. 进行操作使字符串为空

Every day a Leetcode 题目来源:3039. 进行操作使字符串为空 解法1:哈希 排序 操作的定义:每次操作依次遍历 ‘a’ 到 ‘z’,如果当前字符出现在 s 中,那么删除出现位置最早的该字符(如果存在的话&…

【ArcGIS】利用DEM进行水文分析:流向/流量等

利用DEM进行水文分析 ArcGIS实例参考 水文分析通过建立地表水文模型,研究与地表水流相关的各种自然现象,在城市和区域规划、农业及森林、交通道路等许多领域具有广泛的应用。 ArcGIS实例 某流域30m分辨率DEM如下: (1&#xff09…

机器学习模型的过拟合与欠拟合

机器学习模型的训练过程中,可能会出现3种情况:模型欠拟合、模型正常拟合与模型过拟合。其中模型欠拟合与模型过拟合都是不好的情况。下面将会从不同的角度介绍如何判断模型属于哪种拟合情况。 (1)欠拟合与过拟合表现方式 欠拟合…

适配器模式:转换接口,无缝对接不同系统

文章目录 **一、技术背景与应用场景****为什么使用适配器模式?****典型应用场景包括但不限于:** **二、适配器模式定义与结构****三、使用步骤举例****四、优缺点分析****总结** 一、技术背景与应用场景 适配器模式在软件设计中扮演着桥梁角色&#xff…

十一、Qt数据库操作

一、Sql介绍 Qt Sql模块包含多个类,实现数据库的连接,Sql语句的执行,数据获取与界面显示,数据与界面直接使用Model/View结构。1、使用Sql模块 (1)工程加入 QT sql(2)添加头文件 …

【SRE系列】--部署gitlab

1、部署gitlab 1.1下载gitlab安装包并安装 下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/ rootk8s-gitlab:~# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/bionic/main/g/gitlab-ce/gitlab-ce_16.1.4-ce.0_amd64.d…

抖音视频提取软件使用功能|抖音视频下载工具

我们的抖音视频提取软件是一款功能强大、易于操作的工具,旨在解决用户在获取抖音视频时需要逐个复制链接、下载的繁琐问题。我们的软件支持通过关键词搜索和分享链接两种方式获取抖音视频,方便用户快速找到自己感兴趣的内容。 主要功能模块:…

Linux之JAVA环境配置jdkTomcatMySQL

目录 一. 安装jdk 1.1 查询是否有jdk 1.2 解压 1.3 配置环境变量 二. 安装Tomcat(开机自启动) 2.1 解压 2.2 启动tomcat 2.3 防火墙设置 2.4 创建启动脚本(设置自启动,服务器开启即启动) 三. MySQL安装(…

【前端素材】推荐优质后台管理系统Sneat平台模板(附源码)

一、需求分析 后台管理系统是一种用于管理网站、应用程序或系统的工具,它通常作为一个独立的后台界面存在,供管理员或特定用户使用。下面详细分析后台管理系统的定义和功能: 1. 定义 后台管理系统是一个用于管理和控制网站、应用程序或系统…

Guitar Pro8.2吉他软件2024中文版功能特点介绍

Guitar Pro 8.2是一款功能强大的吉他乐谱软件,专为吉他手、音乐制作人和音乐爱好者设计。它提供了丰富的功能,帮助用户轻松创建、编辑、打印和分享吉他乐谱。以下是Guitar Pro 8.2的主要功能特点: Guitar Pro 2024 win-安装包下载如下&#x…

go interface{} 和string的转换问题

1.遇到的问题 问题来源于,我sql模版拼接遇到的问题。 首先,这样是没有问题的。 var qhx interface{} "qhx"s : qhx.(string)fmt.Println(s) 但是当我在这段代码里用:1.类型断言 var sqlStr "select * from tx_user where username %s" join…

leetcode——hot1

两数之和 class Solution {public int[] twoSum(int[] nums, int target) {int[] arrs new int[2];for(int i 0; i < nums.length - 1; i){for(int j i 1; j < nums.length; j){if(nums[i] nums[j] target){arrs[0] i;arrs[1] j;break;}}}return arrs;} }

sql注入 [极客大挑战 2019]FinalSQL1

打开题目 点击1到5号的结果 1号 2号 3号 4号 5号 这里直接令传入的id6 传入id1^1^1 逻辑符号|会被检测到&#xff0c;而&感觉成了注释符&#xff0c;&之后的内容都被替换掉了。 传入id1|1 直接盲注比较慢&#xff0c;还需要利用二分法来编写脚本 这里利用到大佬的脚…

C++——基础语法(3):内联函数、auto关键字、基于范围的for循环、空指针nullptr

6. 内联函数 在函数前加入inline修饰即可将函数变为内联函数。所谓内联函数&#xff0c;就是在编译时C编译器会将函数体在调用内联函数的地方展开&#xff0c;从而省去了调用函数的栈帧开销&#xff0c;提高程序运行效率。 inline int Add(int a, int b) {return a b; } int …

【电子书】设计制作

资料 wx&#xff1a;1945423050 整理了一些互联网电子书&#xff0c;推荐给大家 设计制作 3D打印建模&#xff1a;Autodesk 123D Design详解与实战 第2版.epub3ds Max 2016中文版标准教程.epubAfter Effects CS 6影视特效与栏目包装实战全攻略(第2版&#xff09;.epubAfter E…

欧瑞康真空TTR91莱宝ITR90真空计KA09420GA09使用说明接线图

欧瑞康真空TTR91莱宝ITR90真空计KA09420GA09使用说明接线图

RocketMQ快速实战以及集群架构原理详解

RocketMQ快速实战以及集群架构原理详解 组成部分 启动Rocket服务之前要先启动NameServer NameServer 提供轻量级Broker路由服务&#xff0c;主要是提供服务注册 Broker 实际处理消息存储、转发等服务的核心组件 Producer 消息生产者集群&#xff0c;通常为业务系统中的一个功…

操作系统访问控制机制

使用访问控制技术&#xff0c;可以设置用户对系统资源的访问权限&#xff0c;即限定用户只能访问允许访问的资源。访问控制还可以通过设置文件的属性&#xff0c;来保护文件只能被读而不能被修改&#xff0c;或只允许核准的用户对其进行修改等。 1.1 保护域 把一个进程能对某…

11-pytorch-使用自己的数据集测试

b站小土堆pytorch教程学习笔记 import torch import torchvision from PIL import Image from torch import nnimg_path ../imgs/dog.png imageImage.open(img_path) print(image) # imageimage.convert(RGB)transformtorchvision.transforms.Compose([torchvision.transforms.…

stm32利用CubeMX完成按键控制LED灯的点亮与熄灭

首先画电图&#xff0c;如下&#xff1a;&#xff08;会话最小系统后就可以不画了&#xff0c;如果要是画实物的话必须要有的&#xff0c;不能忘&#xff0c;模拟就无所谓了&#xff09; 然后是CubeMX设置时钟 这次使用的是内部8M时钟&#xff0c;这样能避免proteus闪退的情况&…