当前位置: 首页 > ai >正文

安卓基础(封装引用)

​情况 1:普通 Java 项目(非 Android)​

src/
├── com/
│   ├── example/
│   │   ├── utils/
│   │   │   └── A.java      // 工具类 A
│   │   └── main/
│   │       └── B.java      // 主类 B

​A.java(工具类,静态方法)

package com.example.utils;  // 包路径public class A {// 静态方法:可直接通过类名调用public static void printMessage(String msg) {System.out.println("A 类输出:" + msg);}// 非静态方法:需创建实例后调用public void showInfo(String info) {System.out.println("A 类信息:" + info);}
}

​B.java(主类,调用 A 的方法)​

package com.example.main;    // 包路径// 导入 A 类(不同包时需要导入)
import com.example.utils.A;public class B {public static void main(String[] args) {// 调用 A 的静态方法A.printMessage("Hello from B!");// 调用 A 的非静态方法A a = new A();a.showInfo("This is an instance method.");}
}
 

​情况 2:Android 项目​

app/src/main/java/
├── com/
│   ├── example/
│   │   ├── utils/
│   │   │   └── A.java      // 工具类 A
│   │   └── MainActivity.java  // Activity 类 B

​A.java(工具类,含需要 Context 的方法)​

package com.example.utils;  // 包路径import android.content.Context;
import android.widget.Toast;public class A {// 静态方法:显示 Toast(需传递 Context)public static void showToast(Context context, String message) {Toast.makeText(context, message, Toast.LENGTH_SHORT).show();}
}

​MainActivity.java(Activity 类,调用 A 的方法)​

package com.example;  // 包路径import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.example.utils.A;  // 导入 A 类public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 调用 A 的静态方法(传递 Activity 的 Context)A.showToast(this, "Hello from Activity!");}
}

123

http://www.xdnf.cn/news/4569.html

相关文章:

  • 视频编解码学习9之照相机历史
  • 【 Redis | 实战篇 短信登录 】
  • 区块链内容创作全攻略:海报、白皮书与视频的视觉化革命
  • idea出现tomcat不能正确部署的问题--解决方案
  • 用电信息采集中的天线种类
  • 链表的面试题4之合并有序链表
  • 大数据TopK问题
  • 什么是延迟队列?RabbitMQ 如何实现延迟队列?
  • 软件工程(五):设计模式
  • 【黑马程序员RabbitMQ高级】自用笔记
  • redis多路复用IO模型 以及 6.0引入的多线程模型
  • string[字符串中第一个的唯一字符][蓝桥杯]
  • 数据中台-常用工具组件:DataX、Flink、Dolphin Scheduler、TensorFlow和PyTorch等
  • Oracle 19c中的私有临时表
  • 不再踩坑!React.memo正确用法及性能优化实战
  • 【C++ Qt】多元素控件(ListWidget、TableWidget、TreeWidget)
  • 阿里云ddos云防护服务器有哪些功能?ddos防御手段有哪些??
  • 若依框架Ruoyi-vue整合图表Echarts中国地图标注动态数据
  • python调用国税乐企直连接口开数电票之查询税收分类编码信息
  • spring cloud alibaba nacos 服务注册
  • 远程桌面软件推荐
  • Java 中的 this 关键字完全指南:从原理到实战应用
  • C语言--字符函数
  • 面向智能体开发的声明式语言:可行性分析与未来图景
  • 搭建部署企业级Harbor镜像仓库
  • Docker容器网络架构深度解析与技术实践指南——基于Linux内核特性的企业级容器网络实现
  • 2D横板跳跃游戏笔记(查漏补缺ing...)
  • 可重入锁理解(redission)
  • 5.7线性动态规划1
  • Linux系统基本指令和知识指南