zoukankan      html  css  js  c++  java
  • Java基础第十天总结——面向对象(上)

    目录:

    一、面向对象特征之一:封装与隐藏

    二、类的成员之三:构造器(或构造方法)

    三、JavaBean

    四、拓展知识:UML类图

    五、关键字:this的使用

    六、关键字:package、import的使用

    /*--------------------黄金分割线-------------------------*/

    一、面向对象特征之一:封装与隐藏

    高内聚:类的内部数据操作细节自己完成,不允许外部干涉;

    低耦合:仅对外暴露少量的方法用于使用;

    隐藏对象内部的复杂性,只对外公开简单的接口。便于外接调用。通俗的说:把该隐藏的隐藏,该暴露的暴露,这就是封装性的涉及思想。

    信息的封装和隐藏:

    Java中通过将数据声明为私有private,再提供公共的public方法:getXx()和setXxx()实现对该属性的操作,以实现下述目的:

    1.隐藏一个类不需要对外提供的实现细节

    2.通过实现定制好的方法来访问数据,方便的加入控制逻辑,限制对属性的不合理操作

    3.便于修改,增强代码的可维护性

    四种访问权限修饰符:

    二、类的成员之三:构造器(或构造方法)

    构造器的特征:

    具有与类相同的名称

    不声明返回值类型(与声明为void不同)

    不能被static、final、synchronized、abstract、native修饰,不能有return语句返回值

    构造器的作用:

    创建对象;给对象进行初始化

    如:Order o = new Order(); Person p = new Person("Peter",15);

    语法格式:

    根据参数不同,构造器可以分为如下两类:

    隐式无参构造器(系统默认提供)

    显式定义一个或多个构造器(无参、有参)

    注意:

    Java语言中,每个类都至少有一个构造器

    默认构造器的修饰符与所属类的修饰符一致

    一旦显式定义构造器,则系统不再提供默认构造器

    一个类可以创建多个重载的构造器

    父类的构造器不可被子类继承

    构造器重载:

    构造器一般用来创建对象的同时初始化对象。

    构造器重载是的对象的创建更加灵活,方便创建各种不同的对象。

    构造器重载,参数列表必须不同。

    总结:

    属性赋值过程先后顺序

    1.默认初始化

    2.显示初始化

    3.构造器中初始化

    4.通过“对象.属性”或“对象.方法”的方式赋值

    赋值先后顺序:1-2-3-4

    三、JavaBean——拓展知识

    JavaBean是一种Java语言写成的可重用组件。

    所谓JavaBean,是指符合如下标准的Java类:

    1.类是公共的

    2.有一个无参的公共的构造器

    3.有属性,且对应的get、set方法

     
    用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以
    用Java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP
    页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用
    户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关
    心任何改变。

     

    四、拓展知识:UML类图

     

    五、关键字:this的使用

    它在方法内部使用,即这个方法所属的对象的引用;

    它在构造器内部使用,表示该构造器正在初始化的对象

    this可以调用类的属性、方法和构造器

    什么时候使用this关键字呢?

    当在方法内需要用到调用该方法的对象的时,就用this。

    具体的:我们可以用this来区分属性和局部变量。

    如:this.name = name;

    当形参与变量名同名的时候,需要用this

    使用this访问属性和方法,如果在本类中未找到,会从父类中查找

    注意:

    可以在类的构造器中使用“this(形参列表)”的方式,调用本类中重载的其他构造器!

    明确:构造器中不能通过“this(形参列表)”的方式调用自身构造器

    如果一个类中声明了n个构造器,则最多有n-1个构造器中使用了“this(形参列表)”

    “this(形参列表)”必须声明在类的构造器首行!

    在类的一构造器中,最多只能声明一个“this(形参列表)”

     

    六、关键字:package、import的使用

    package语句作为Java源文件第一条语句,指明该文件中定义的类所在的包,格式为:

    package 顶层包名.子包名;

    包对应于文件系统的目录,package语句中,用“.”来指明包(目录)的层次;

    包通常用小写单词标识,通常使用所在公司域名的倒置:com.atguigu.xxx

    包的作用:

    包帮助管理大型软件系统:将功能相近的类划分到同一个包中。比如:MVC的设计模式

    包可以包含类和子类,划分项目层次,便于管理

    解决类命名冲突的问题

    控制访问权限

    MVC设计模式

     

     

    JDK中主要的包介绍:

     

    关键字——import

    为使用定义在不同包中的Java类,需要import语句来引入指定包层次下所需要的类或全部类(.*)。import语句告诉编译器到哪里去寻找类。

    语法格式:

    import 包名.类名;

    注意:

    1.在源文件中使用import显式的导入指定包下的类或接口

    2.声明在包的声明和类的声明之间

    3.如果需要导入多个类或接口,那么就并列显式多个import语句即可

    4.举例:可以使用java.util.*的方式,一次性导入util下所有的包或接口

    5.如果导入的类或接口是Java.lang包下的,或者是当前包下的,则可以省略此import语句

    6.如果在代码中使用不同包下的同名类。那么就需要使用类的全类名的方式指明调用的是哪个类

    7.如果已经导入java.a包下的类。那么如果需要使用a包的子包下的类的话,仍然需要导入。

    8.import static组合的使用:调用指定类或接口下的静态的属性或方法

  • 相关阅读:
    IOS使用 swizzle 解决一些错误
    Objective-C的hook方案(一): Method Swizzling
    jmeter录制Chrome浏览器https请求进行压力测试
    FIDDLER导出JMX文件,JMETER打开导出的JMX报错的解决方式
    Fiddler的PC端与手机端抓包配置步骤
    初识中间件之消息队列--提高服务性能
    Python虚拟环境配置应用
    jmeter三种阶梯式加压
    JMETER-正则表达式提取与查看变量是否提取正确
    jmeter的线程数,并发用户数,TPS,RPS 关系解说
  • 原文地址:https://www.cnblogs.com/zhoutie170821/p/11801606.html
Copyright © 2011-2022 走看看