23.包、修饰符、jar
下面都是在记事本里面写代码
1. 包的定义格式:
package 包名(全小写) 例如: package a;
注意:
1)package语句必须位于java文件的第一个语句
2.编译运行
注意:
添加包名后我们创建的文件必须要放在跟包名相同的文件夹里面
如果我们没有放在跟包名相同的文件夹里面你会发现编译是可以通过的,
但是当我们在运行class文件的时候会报错,
所以我们在编译的时候一定要放在文件夹里面
这时我们很苦恼1:我们在做项目的时候不可能把每一个类都放在一个java文件里面,这样难道我们每次编译一个class文件都要手动创建一个文件夹吗?
解决:我们可以通过敲令的方式命令的方式快速创建(可以在控制台输入javac看用法)
语法:javac -d 指定类文件路径 java源文件 例如: javac -d d:\ Demo1.java 我们也可以把路径写 “ . ”(这个表示当前路径) 例如 javac -d . Demo1.java
注意:当我们运行class文件的时候要在前面加包名 语法:包名.class文件名
3.调用另一个包里面的类的方法
需求:在b包的Demo2中调用a包中的Demo2类中print方法
1)方法一:
步骤
a. 我们先创建一个对象 a.Demo1 d = new a.Demo1();
b. 我们在调用print方法 d.print("我调用了a包里面Demo1类的print方法");
注意:我们在创建对象的时候一定要加上要调用class文件的所属包名
2)方法二(import):
步骤
a. 我们要在Demo2文件写一个import语句 import a.Demo1; 注意:这个一定要在第一个语句
b. 我们先创建一个对象 Demo1 d = new Demo1();
c. 我们在调用print方法 d.print("我调用了a包里面Demo1类的print方法");
注意:被访问的类要注意修饰符;
4.修饰符
5. 打jar包(可以在控制台输入jar查看语法格式和用法)
注意: 我们在写好一个工具包都是给class文件打jar包给别人使用的,而不是给的class文件。
23.包、修饰符、jar的更多相关文章
- java 包 修饰符 权限详解
作用域 当前类 同package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly(default) √ √ × ...
- Java 面向对象之static,final,匿名对象,内部类,包,修饰符
01final关键字概念 A: 概述 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承, 或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这 ...
- 13_Java面向对象_第13天(static、final、匿名对象、内部类、包、修饰符、代码块)_讲义
今日内容介绍 1.final 关键字 2.static 关键字 3.匿名对象 4.内部类 5.包的声明与访问 6.访问修饰符 7.代码块 01final关键字概念 A: 概述 继承的出现提高了代码的复 ...
- java修饰符的一些知识点
1.java默认的修饰符是不加任何标志,默认为包修饰符,在同一个包下的类都可以对其进行调用.若需要进行跨包调用,往往需要加上修饰符public2.public修饰符对需要调用其的消费者都是可见的,一个 ...
- 零基础学习java------day10------带包编译,权限修饰符,内部类,调式,junitTest
0. 带包编译 解决使用notepad++编写的java类中如果有package的解决方案,如下代码 package com._51doit.test; class HelloWorld{ publ ...
- 5、static、final、匿名对象、内部类、包、修饰符、代码块
final关键字 final关键字概念 * A: 概述 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承, 或者有些类中的部分方法功能是固定的,不想让子类重写. ...
- Java面向对象(static、final、匿名对象、内部类、包、修饰符、代码块)
面向对象 今日内容介绍 u final u static u 匿名对象 u 内部类 u 包的声明与访问 u 四种访问修饰符 u 代码块 第1章 final关键字 1.1 final的概念 继承的出现提 ...
- java基础(13):static、final、匿名对象、内部类、包、修饰符、代码块
1. final关键字 1.1 final的概念 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子 ...
- 包和访问权限修饰符,.单例设计模式,.Object类常用方法,.内部类
1.包和访问权限修饰符 1.1 包 为什么要导包? 将字节码文件(.class)文件进行分类存放 --->包 其实就是文件夹 import java.util.Arrays; 包的划分规则 方案 ...
随机推荐
- qdatatime大小
QDateTime time1; QDateTime time2; uint stime = time1.toTime_t(); uint etime = time2.toTime_t(); int ...
- python爬虫环境1
转载 https://cuiqingcai.com/5052.html 1.1 python3安装 配置环境变量:随后点击“新建”,新建一个条目,将刚才复制的C:\Python36复制进去.这里需要 ...
- nodejs模块——fs模块 WriteFile写入文件
WriteFile写入文件 使用fs.writeFile(filename,data,[options],callback)写入内容到文件. 参数说明: filename String 文件名 dat ...
- c++之初始化列表
#include<iostream> using namespace std; class Person{ public: int m_a; int m_b; int m_c; Perso ...
- SQLServer AlwaysOn在阿里云的前世今生
缘起 早在2015年的时候,随着阿里云业务突飞猛进的发展,SQLServer业务也积累了大批忠实客户,其中一些体量较大的客户在类似大促的业务高峰时RDS的单机规格(规格是按照 内存CPUIOPS 一定 ...
- iscroll refresh无效解决办法
最近用iscroll.js 写移动页面,效果还是挺好的.但,还是会遇到重新初始化的问题. var myScroll = new IScroll('#rule_wrapper',{ click:true ...
- Vue 事件相关实例方法---on/emit/off/once
一.初始位置 平常项目中写逻辑,避免不了注册/触发各种事件 今天来研究下 Vue 中,我们平常用到的关于 on/emit/off/once 的实现原理 关于事件的方法,是在 Vue 项目下面文件中的 ...
- Android中对应用程序的行为拦截实现方式概要
这次是真的好长时间都没有写博客了,主要不是因为工作上的事,主要还是这个问题真的有点复杂,实现起来有点麻烦,所以研究了很长时间(大约有一个月的时间).但是幸好最后问题搞定了~~ 一.问题场景 想实现36 ...
- CF232E Quick Tortoise , Fzoj 3118
这一题由于数据较多,我们考虑离线处理. 分治.对于两个点s,t,如果起点在mid这条横线上方,终点在下方,那么它必定会穿过mid这条线.所以只要s可以到mid上一点x,x可以到t,st就是安全的. 用 ...
- Hadoop-HDFS的伪分布式和完全分布式集群搭建
Hadoop-HDFSHDFS伪分布式集群搭建步骤一.配置免密登录 ssh-keygen -t rsa1一句话回车到底 ssh-copy-id -i ~/.ssh/id_rsa.pub root@no ...