一. 包和导入

关键字:package、import

包的概念:
包的本质就是文件夹,是对项目中的类进行管理的。在代码中,用package明确当前类所在的包。
注:package必须出现在类的第一行

导入的概念:
导入是指在一个类中,使用其他类,需要先将其他包中的类引入到本类中。
注:
1、只有其他包中的类需要导入,同包中的类无需导入
2、java.lang包(即language语言包中的类)在使用时会自动导入,无须手动导入。
3、可以使用"*"通配符,来表示按需导入

包的命名:一般都是域名倒着写
规范:
1、全小写
2、多个单词间用.分隔

二. 权限(范围)修饰符

概念:权限修饰符是用于设置成员对其他类的可见性的
public > protected > [default] > private

                 public      protected       [default]       private
本类                    √             √               √              √同包不同类             √             √               √              ×其他包的子类            √             √               ×              ×其他包的无关类       √             ×               ×              ×

怎么用?
1、public:一般工具类中的静态常量、方法都是public
2、protected:让子类可以任意访问父类成员时
3、[default]:一般包用于进行模块的划分,如果一个成员只与该模块有关,其他包(模块)没有访问它的必要和意义,那么就可以把该成员设置成[default]
4、private:属性的封装、父类的独有方法

三. 单例设计模式 Singleton

设计模式:套路、模板
单例:是指当前工程中的某个类的对象在内存只有一份

使用单例的目的:
1、节省资源
2、全局共享数据的统一管理

代码编写的步骤:
1、构造函数私有化,防止其他类创建本类对象
2、在本类中创建本类对象
3、对外提供获取本类对象的方法

3.1 饿汉式

//1.私有化构造器
private Tools1(){}
//2.创建本类对象
public static Tools1 t = new Tools1();
//3.对外提供访问本类对象的方法
public static Tools1 getInstance(){return t;
}

缺点:即使没有调用getInstance方法也进行了对象的创建

3.2 懒汉式

//1.私有化构造器
private Tools2(){}
//2.1定义本类对象
public static Tools2 t = null;
//3.对外提供访问本类对象的方法
public static Tools2 getInstance(){if(t == null){t = new Tools2();}return t;
}

缺点:不能保证线程安全

3.3 线程安全的懒汉式

//1.私有化构造器
private Tools2(){}
//2.1定义本类对象
public static Tools2 t = null;
//3.对外提供访问本类对象的方法
public static Tools2 getInstance(){synchronized(Tools2.class){if(t == null){t = new Tools2();}}return t;
}

java基础笔记(18)包和导入、权限修饰符、单例模式相关推荐

  1. 学习大数据的第13天——Java面向对象(接口、分析参数返回值的类型不同时如何解决、包以及访问权限修饰符(public、protected、默认、private))

    学习大数据的第13天--Java面向对象(接口.分析参数返回值的类型不同时如何解决.包以及访问权限修饰符(public.protected.默认.private)) 接口 接口的基本定义: 1.1.语 ...

  2. JAVA基础-栈与堆,static、final修饰符、内部类和Java内存分配

    JAVA基础-栈与堆,static.final修饰符.内部类和Java内存分配 发布时间: 2013/01/12 22:29 QQ空间 新浪微博 腾讯微博 人人网 豆瓣网 百度空间 百度搜藏 开心网 ...

  3. 包package,权限修饰符

    定义包的格式   package 包名; 多级包用.分开即可 注意事项:   package语句必须是程序的第一条可执行的代码   package语句在一个java文件中只能有一个 如果没有packa ...

  4. Java学习笔记:04面向对象-内部类_访问修饰符_final

    04面向对象-内部类/访问修饰符/final 1.static的介绍 static:关键字,静态的 static的作用是用来修饰类中的成员 2.访问一个类中的某一个成员变量 方法一: _1.创建对象 ...

  5. Java语法封装之继承、访问权限修饰符、重载与重写、this与super、final、Javabean的使用

    3.3封装 封装 : 隐藏内部的实现细节,对外提供公共的访问方式.方法,类,属性的私有化- 都是封装的体现 封装优点 : 提高程序的安全性 提高代码的复用性 私有是封装,但是封装不是私有 3.3.1 ...

  6. java数组最大值索引_java中的权限修饰符有哪些?怎么获取数组最大值?

    java作为一门编程语言,由于它的优秀,现在已经成为很多人的首选编程语言.java中关于修饰符和数组的知识点也是十分多的,今天就来为大家介绍一下,java中的权限修饰符有哪些?怎么获取数组最大值?一起 ...

  7. java方法和变量修饰符有哪些_死磕Java基础---类,变量和方法的修饰符

    欢迎关注微信公众号:一个自学的程序员 类修饰符 对于类的修饰符,毫无疑问是用来修饰类的,那么,修饰类的修饰符都有哪些? 有如下这些: 1. abstract 2. final 3. private 4 ...

  8. Java基础教程【第八章:访问修饰符】

    章节目录 1. 访问修饰符 1.1 public 1.2 protected 1.3 private 1.4 defaulted 2. static 2.1 静态变量 2.2 静态方法 2.3 静态代 ...

  9. Java基础笔记18

    ###18.01_集合框架(Map集合概述和特点) A:Map接口概述 查看API可以知道: 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 B:Map接口和Collecti ...

最新文章

  1. 程序员大厂不一定要进,算法必须要学!收藏89篇精选算法文章
  2. Linux内核开发之将驱动程序添加到内核
  3. phphstudy运行不了网站_phpStudy访问速度慢和启动失败的解决办法
  4. PHP的display_errors与error_reporting
  5. android TextUtils的使用
  6. 动手造轮子:实现一个简单的依赖注入(二) --- 服务注册优化
  7. java继承时父类常量覆盖吗_Java父类继承中的static和final用法
  8. Bailian4042 Rabin-Karp字符串匹配【文本】
  9. 保证可见性_十年程序员浅谈并发的原子性、可见性、有序性
  10. oracle如何修改initial参数,oracle初始化参数设置
  11. 论Webstorm汉化后无法打开配置
  12. YYKit-YYCache分析
  13. 周鸿祎:创业者需要有点阿Q精神
  14. 微信好友只有昵称没有微信号_为什么有些好友名片有显示微信号,有些却没有,怎么回事?急...
  15. JS带节日农历万年历插件
  16. 汇编语言cf,of,sf,zf
  17. 【项目实例】使用C#开发纽曼USB来电通来电弹屏客户端小结
  18. 记一次RATEL脱壳配合Il2CppDumper解密完成的样本分析
  19. ffmpeg文档中文翻译
  20. java gui编程 计算器_Matlab-GUI编程:简单计算器的实现

热门文章

  1. 理想和现实中的大学差距
  2. Maven介绍与应用
  3. C++ 系列:设计模式研究
  4. 常见问题及解决问题的思路
  5. Java教程:微信排序并加密工具类
  6. Word文字如何竖向
  7. 医药健康API开放接口
  8. redis实现用户签到,统计活跃用户,用户在线状态,用户留存率
  9. 【医院/诊所挂号系统】如何减少预约患者恶意退号爽约?
  10. 办理户籍推出9项便民措施 未成年人可随父在京入集体户