面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)

时间:2021-05-03 21:08:12
类与类之间的关系: 常用:关联关系(最弱的关系)
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
注意:如果一个类的属性需要另一个类的属性进行解释,那么可在当前类中声明另一个类的类型属性到当前类中
------------------------------------------------------------------------------------------------------------------
权限修饰符: (用来限定对象对该类成员的访问权限)
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
●   private (私有的):只能在当前类中使用
●   缺省 (默认):     只能在当前类和当前类所在同一个包下使用
●   protected (受保护的):只能在当前类和当前类所在同一个包下及当前类的子类中使用

●  public(公共的): 任何地方都可以使用

------------------------------------------------------------------------------------------------------------------
toString( ):
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)

------------------------------------------------------------------------------------------------------------------

数据类型转换:
基本数据类型:强转
●  强转前的数据类型必须和强转后的数据类型相兼容
●  强转前的数据类型的范围大于强转后的数据类型的范围
基本数据类型:自动类型转换
●  转换前和转换后的数据类型相兼容

●  转换前的数据类型的范围小于转换后的数据类型的范围

面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)

引用数据类型:
●  必须有继承关系
●  父类是大范围的数据类型,子类是小范围的数据类型
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
------------------------------------------------------------------------------------------------------------------
==:
●  基本数据类型:比较的是两边的值是否相等。但值两边的类型可以不相同
●  引用数据类型:比较的是两边的内存地址
------------------------------------------------------------------------------------------------------------------
equals: (obj1.equals(obj2))
●  比较的是两个引用数据类型“实际的值”是否相等
●  特例:File、String、Date及包装类来说,是比较类型及内容而不考虑引用的是否是同一个对象
●  原因:在这些类中重写了Object类的equals()方法
注意:在Object类中比较的还是两个引用数据类型的内存地址,如果想比较两个引用数据类型的“实际值”是否相等,需在引用数据类型所在的类中,重写Object类的equals方法。自定义的引用数据类型,需人为重写equals方法
------------------------------------------------------------------------------------------------------------------

包装类:(Wrapper:针对八种基本定义相应的引用类型)

●  有了类的特点,就可以调用类中的方法。

面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图) 面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
------------------------------------------------------------------------------------------------------------------
单例设计模式: (Singleton:只在整个工程中在类的对象有且只有一个)
饿汉式 :不管你使用不使用我都给你创建好
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
懒汉式 :当你需要使用的时候我再给你创建
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
注意:懒汉式还存在线程安全问题,多线程时,可修复
------------------------------------------------------------------------------------------------------------------
JavaBean:(也叫java类,一种Java语言写成的可重用组件)
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
●  类是公共的
●  有一个无参的公共的构造器
●  有属性,且有对应的get、set方法
注意:用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变
------------------------------------------------------------------------------------------------------------------
UML类图:
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
●  + :表示public类型
●  - :表示private类型
●  # :表示protected类型
●  方法的写法 类型  方法名(参数名: 参数类型):返回值类型

------------------------------------------------------------------------------------------------------------------

面向对象内容总结:(面向对象特性,是java学习的核心、重头戏)
面向对象——OOP(四)(类与类的关系、权限修饰符、==与equals、单例设计模式、UML类图)
------------------------------------------------------------------------------------------------------------------

JDK中主要的包介绍:
●  java.lang :Java语言的核心类,提供常用功能。如String、Math、Integer、System和Thread
●  java.net :执行与网络相关操作的类和接口
●  java.io :提供多种输入/输出功能的类
●  java.util :实用工具类,如定义系统特性、接口的集合框架类、使用与日期日历相关的函数
●  java.text :java格式化相关的类
●  java.sql :java进行JDBC数据库编程的相关类、接口
●  java.awt :构成抽象窗口工具集的多个类,这些类被用来构建和管理应用程序的图形用户界面
●  java.applet :包含applet运行所需的一些类
------------------------------------------------------------------------------------------------------------------
自己整理,有些地方是扒拉的,如有侵犯,还望告知