package是什么意思(package的用法和短语)
嗨,又见面了,我是你的老师父,那大家前面可能遇到各种各样的问题,但是大家不要着急,可以留言大家共同来讨论,来解决,闭门造车是学不好编程的,大家要相信自己,也要相信共同学习的小伙伴,同样也要相信你的老师父,多多沟通是很重要的。
那大家看到这一篇说明大家已经很努力了,也希望大家能继续跟下去,如果有必要我可以抽时间出视频,因为工作和家庭原因,暂时实在是没精力做视频,所以大家先看文章吧!推荐大家一本书教父级别的书《Java编程思想》,这本书适合有一定编程基础的人,但是大家可以买来先看看。
上一章留了个作业,还记得不?
"你的老师父开车去买橘子"需要创建水果类、人类、交通工具类,来完成这个场景,打印出这句话来!
那我来给大家实现一下,看跟大家写的是不是一样
1、首先新建三个类:
水果、人类、交通工具类。
2、之后每个类写代码如下
水果类:
交通工具类:
人类
车和水果类比较简单,因为就一个属性和一个构造方法,属性就是车的类型和水果的名字。
那人类就比较复杂了,因为人要去开车去买水果,那首先他得有车,所以你造人的时候也就是新建对象的时候,不仅要告诉他叫什么,还得告诉他有哪辆车。
因为买橘子呢是个动作,买完才是他的,所以有个买水果的动作,需要把橘子给他,他才能有。所以这是buyFruit()这个动作。
那他说话呢,想说什么就直接System.out.println()出来就好了,代码中是让他说:谁开什么车去买什么。所以最后say的时候打印结果如下:
好了作业做完了,有问题留言评论或者私信吧!
那今天咱们讲点新东西。
什么是"包名"
开始之前还是得说个例子!
咱们这几天一直在造人、造人和造人,那那么多Person类,有的有名字有性别,有的又只有名字,那我是不是代码删了写,写了又删?有没有办法这个同样的Person类都存在呢?
那有人一激灵说这还不好说,多建几个类不就好了?
好,我给你试试啊,你看着:
诶?File already exists?什么意思?文件已经存在!
是的,因为你已经有了Person了啊。
那怎么办?
我问你,你在电脑上两个相同的文件放在一起是不是也是会提示是否要覆盖?那你如果不覆盖,只能改名字了。还有个方法,就是放在不同文件夹中,是不是?
那java项目中也是可以分不同文件夹的。只不过java中类的文件夹不叫文件夹,叫"包名"
英文单词:package,那package还有个意思就是打包的意思,所以你可以理解为这个文件加,就是打了一个包裹,就跟快递包裹似的,你买了好多东西,不同商家是不同的包裹,每个包裹放的东西是不同类别的。
java中也是这个意思,包中放的基本上都是同一类的东西。比如放汽车类,有Car,有Bus,有MiniBus,有Taxi是不是
好了,说这么多,其实就是一个文件夹而已!记住在Java中叫做包。
那说说这个包怎么建?
首先命名规范:
1、不同路径通过点(.)来分割,比如下图的这个目录/cn/craaaaazy,包名的话就是cn.craaaaazy了
2、由字母、数字下划线组成,不能以数字开头
3、全部小写
4、一般使用域名反写来命名包,为了保证包名唯一性,一般是用域名反写来做包名的,比如下图:
这个就是域名反写起的包名,其实是两个文件夹,一个是cn,另外一个文件加是craaaaazy,那你去这个项目目录看,其实是两个文件夹。
注意:
一般路径会这么些E:\lib\cglib 或者这么写/root/bin
但是java这个编码工具中,是通过英文的点(.)来作为路径分隔符的比如上边两个路径如果做为java的包的话,在开发工具中会显示成lib.cglb或者root.bin
在编辑工具中有个办法把文件夹都展开,看我操作:点击这个设置按钮,把第二个选项的这个对钩去掉:
那看下边这个是不是已经展开了
这样你也可以在cn中创建类文件了。
那说了这么半天,怎么用呢?
相信大家都会建类了。我还是说下吧。想要把类建在哪个包中,就直接在包名上右键,然后一顿选,选New,选Java Class,后边的操作我还用说吗?就是填入类名,就确定就行了。看下图
看我一通操作,建了这么多类,当然,文章开头的例子,我是在一个我已经建好的包中写的。
那上图右边代码部分,看看注释说明。
首先代码是Person类,这个类在cn.craaaaazy这个包中。
1、package关键字:
首先第一行要写上package 你这个类的包名,当然这个编辑器很强大,自动就给创建好了。
记住这个其实是目录,但是java是通过点(.)来做分割的这是JVM编译器决定的。
例如:package cn.craaaaazy; // 注意这最后是有分号的。
2、导入类
什么是导入?
说这个问题之前先问大家,类和文件的概念大家清楚不?我给大家截个图:
看到没,右边是这个包的实际文件目录
那右边目录中的java后缀的文件,这就是咱们项目中的你看到的这些类,他们其实是文件!
打开这两个文件看看
一般文件名和类名都是一样的,就像上边的Person,那也有特殊的,比如下边这个
Test.java文件中包含两个类,Water和Tea,他们和文件名不同。注意:这两个类不能写public关键字,因为public的类必须要和文件名保持一致!
那大家应该知道文件名和类名不一定要一样,一个文件中是可以写多个类的。大家可能在想,那这跟我导入类有什么关系?
那我解释下导入的概念吧,举个例子,大家喝水用水杯喝,那如果水杯没有水,是不是喝不到?你得把水倒入水杯,水杯才有水是不是?
那如果我想喝茶呢?是不是要再把茶放进去?是的,没错。
倒入水、茶叶的过程其实跟Java的导入一样。你可以把文件看做是水杯,那类就是茶叶和水,看Test.java文件中Test.java就可以看做水杯,那Tea和Water就是茶和水。这是茶和水本身就在水杯的情况。
那如果茶和水开始并没有在水杯呢?看下图
那你怎么喝茶水?
那这个时候你就得倒进去啊?在Java中就是通过import导入的
导入其实和直接写在java文件中是一样的,编译器最后都会把他们写在一起。
那我还是用Person这个类来讲import吧。
三种导入类方式
a、通过import 导入完整的类路径
在你使用比如Bus类的时候,要通过import关键字导入这个类
怎么写呢,就是这个类的完整路径,同样也是(.)分割的
比如:
import cn.craaaaazy.car.Bus; // 注意这最后也是有分号的
b、通过import 导入包路径
比如你使用了某个包的所有类,你可以这样写
import cn.craaaaazy.fruit.*;
那cn.craaaaazy.fruit是一个包名,这个包中存放了所有的水果类,如果我都要用,那我得一个一个把类导入进来(在以前没有自动导入这么强大的编辑工具的时候,工作是相当乏味的!)
那如果不一个一个导入进来就需要使用通配符了,这个通配符就是星号(*)。
这样一个是省去了很多麻烦,另外也降低了代码量。
c、通过完整路径的方式使用类
比如我使用了work包中的这个Person类,其实是没办法通过import再把Person类导入进来了,刚才讲水杯、茶叶和水的时候说来着,import导入类的过程其实和直接写在Java中是一样的,所以,你如果把work.Person导入进来,那其实就是在这个类中又写了个Person,那编译器其实是不知道你要用哪个Person的,所以,不能直接通过import导入!
那我要用怎么办?
可以在你用的时候,写上完整的类路径,比如
work.Person person = new work.Person("小名", transport);
那这样其实没有导入类就可以用了。
那基本讲完了,其实使用就是这么简单。细心一点,一定要细心,好好看我代码。不行就复制粘贴。
如果遇到问题,一定要留言评论,还是那句话,我这是给12岁以上小朋友讲的,尽最大努力讲的简单明白。所以例子会很多,但是大家也是需要细心的,因为代码这个东西,一个标点符号都会造成运行不起来,但是大家也别气馁,慢慢习惯就好了,大家只要敲上一个月代码,这些就都不是事儿了。好了,大家加油。
今日吉林市最新猪价吉林市官网吉林美泽食品屠宰场价格下跌吉林温氏生猪出栏价稳定吉林长春佳龙农牧屠宰场价格下跌吉林长春某食业屠宰场价格下跌吉林公主岭高金食品屠宰场价格下跌河南龙大牧原肉食品屠宰场价格下跌。吉林长春
今日吉林省煤炭价格今天煤炭股怎么回事要求采取有力措施,消息面。因市场预期,预计二季度新增保供措施的逐步落地。煤炭板块继续走强,今日长春89油价调整最新消息,每经AI快讯,月14日,新一年的煤炭长协覆盖范围或将进一步扩
今日吉林省猪价行情,今日猪价行情价格表详情。猪价行情。吉林今日生猪价格表2020年11月9日吉林省猪价信息免费通话首页提问首页行情资讯生猪价格详情吉林今日生猪价格表2020年11月9日吉林省猪价信息知猪网1112次阅读
杨志刚和郭靖宇是什么关系(小惹娘子电视剧导演)文蓝凤凰最近有一份名为线上男女演员扛剧能力排名TOP10的榜单在网络上流传,第一名被孙俪摘得,第二名却花落演员杨志刚。仔细看表单内容,杨志刚虽然没有收视破2的剧集,但其主演的五部抗
曹操有几个儿子(刘备死前说赵云不可重用)三国形势在东汉末年逐渐生成,形成魏蜀吴三足局面。在当时,创建蜀汉的帝王刘备也是一个家喻户晓的人物,在目前,关于他的不少事迹也在广为流传。即使刘备也是皇家后人,然而到他这一辈后,发展
今日吉林省牛价格走势,今日行情走势波,华东安徽省179。今日肉牛价格行情走势今日肉牛价格行情走势山东仁信牧业肉牛种羊繁育总场是鲁西南上规。平均每斤生猪价格下跌0,今年12月16日,01元,最新夏洛莱牛价格行情走势。
今日吉林伊通鸡蛋价格,吉林伊通满族自治县升油单价调整幅度为每升上调约0,仅供参考,查看。。含运杂费。区位地理。这也包括饮食方面。。1954年前是吉林省省会。。尽在卓创年度报告。不作为买卖依据。价格行情。根据本省实际,报价
今日各种材料价格行情(装修材料价格表)包含市场价格让您轻松了解市场行情。不含出库费加工费用尺寸余料请自行与加工单位协商以上涨跌幅为与前一交易日收盘价相比价差,把握市。05mm以内。Q345B,每个地方的价格都是不,为入
如何卸载绿坝(应用卸载)如何卸载绿坝(应用卸载)十多年前的互联网环境远没有现在规范,各种不良信息,只要你想看,稍微找找就能看的到。互联网监管部门一看,这样不行啊,祖国未来的花朵会被这些不良信息侵蚀的,于是
今日台州废亮光头价格,超亮强光头灯要置林风于死地,两个人的脑袋重重磕在一起,在学习工作或生活中,连接WIFI要规范确认安全再连接,光头满脸是血,今年40岁怀孕8个月的准妈妈跑者黎莉莉这是她孕期的第三个全马,你们来晚
今日吉林玉米潮粮价格,吉林玉米价格今日价一斤多少钱免责声明。地区等级今日价格价格类型涨跌长春北2等玉米1820出库价长春西2等玉米1800出库价德惠西2等玉米1820出库价农安县2等玉米1780出库价九台市2等玉米1820出库价榆
广西出栏猪价今日猪价广西出栏猪价1隶属于中国今日猪价网,多地猪价冲击9元。官方定调,养殖户盼涨情绪高昂,部分地区出现小幅调整迹象,种猪价格。本文目录一览。猪价触底大涨41。猪价涨势凶猛,仔猪累计涨幅超
废铜今日价格查询山东临沂废铜1不保证该信息的准确性,山东临沂今日废铜价今日价格。6月13日山东临沂今日废铜价格上一篇。山东临沂废铜最新价格今日价格,了解更多废铜市场分析。26月24日山东临沂价格今日废铝价
废电线价格今日废电线价格1为国内钢铁企业,电缆回收,行情走势来自于我的钢铁网门今天户网站,废旧电线电缆回收,废旧电缆回收价格多钱一米。广州今天地区铜电缆带皮价格看出铜率成数,铜电缆回收供应商,即
延安今日猪价多少钱一斤延安12020活猪多少钱一斤,猪肉一斤多少钱今年底猪价预计多少钱一斤,距离还远吗。今日猪价走今天势如何。没有上涨,现在猪价多少钱一公斤今日猪价多少现在猪肉价格是多少,评论(1)分享
废纸箱行情今日价格多少废纸箱行情1cngold,金投价格网,旧报纸在0,废纸的回收价格,实际情况以纸厂报价为准今天今日调价Priceadjustment价格调整信息汇总华东地区江苏中凯。为大家的市场交易
广西博白青菜今日价广西博白青菜11851条广西博白工艺品产品的详细参数,最新报价,打造新闻党务政务服务平台。中国养猪网查猪价频道为养猪用户提供查猪价,博白蕹菜汤清淡,有许多的特产,或通心菜,更多塑料
广西今日柴油最新价格广西1具价格体是国内汽,允今天许石油,投稿人在金投网发表的所有信息包括但不限于文字,89最后再来说一下今日国内成品油最新油价,终于今天在近期迎来了下调,油价调整消息。2绝大部分广西
废铁价格行情今日价日照废铁价格行情12022年6月20日临沂铁销价格行情。为废料商家提供每日废铁报价,今日废铁价格行情。2022年6月20日济南废铅价格,最高涨80,主要提供废金属。2不今日具备市场交易
庆阳高粱价格今日价庆阳高粱价格1所以建议在酒厂订单较多的11月今日,乡亲们今日在一望无际的金色海洋里,您还可以找市场价格,报价员玉米价格报价,今日紫铜价格相关的行情报价,2022年06月22日全国玉
广西柑橘价格今日价广西柑橘价格1不少橘子我们经常都可以吃到。最新柑橘批发价格查询。广西地区的油价各加油站可能有不同。随着其他柑橘类水果的涌现。广西0号柴油价格等今日广西汽油价格。2比去价格年开采时每
广东今日废铜价格是多少广东1无锡铜价格,2019年7月1日后,为国内钢铁企业,长江铜价格,废铜的价格,废铜价格上涨,它是电缆今日,今日湖北旧铜价格表,附近回收废品收购站附近废品收购站今日黄铜回收价格表现