第十六天 面向对象之构造方法 static关键字 继承

今日内容:

一.构造方法

1.定义:

1)类名和方法名相同的方法

2)没有返回值

3)void也没有

构造方法是支持方法重载(方法名相同,参数列表不同,与返回无关)

 2.使用构造方法的注意事项:
 *      1)一个类中如果没有提供任何构造方法,系统会默认提供一个无参构造方法
 *      2)如果一个类中提供了有参构造方法,系统不会提供无参构造方法,如果你还要使用无参构造方法来创建类对象,报错!
 *                      类名 对象名 = new 类名() ; 默认执行的无参构造方法

3.赋值方式:只有两种

1)有参构造直接赋值

2)通过setXXX赋值

二.static关键字

 static关键字的特点
 *      1)随着类的加载而加载,
 *          类在在加载的时候,静态相关的成员(类成员:静态的变量或者静态的方法),随着类的加载而先进内存(静态区)
 *      2)优先于对象存在, 不能和this共存
 *      3)static能体现"共享,共用"的意思
 *              如果需求中有"共用"含义,这个变量直接使用static修饰
 *      4)被static修饰的成员(变量/方法),推荐的访问方式是使用类名.静态变量
 *                              类名.静态方法名()
 *
 *                          当然可以使用类名 对象名 = new 类名() ;
 *                          对象名.静态变量()  (不推荐)
 *                          对象名.静态方法()  (不推荐)

作用:static 修饰变量达到全局变量的效果,修饰的变量属于类,修饰的方法属于类方法,不需要创建对象就能访问

三.继承

    将多个事物(类)的共性内容抽取到一个独立的事物(类)中,
  这个事物(类)和其他事物(其他类)之前产生一种关系,称为"继承"   关键字 "extends"
 *
 *         格式:
 *             class 父类名{
 *                 共性内容:属性私有化
 *                 对外提供公共的访问方法
 *                 //其他成员方法
              }
            class 子类名 extends 父类名{
 
              }
 
 
           从下面代码看,继承的特点:
               1)提高了代码的复用性
               2)提高了代码的维护性(方便后期维护)
               3)类与类产生的继承关系,是多态的前提条件!

 
           弊端:
                   继承的关系:是存在局限性,不要为了使用部分功能而去使用继承!
                   什么时候使用继承?

 
                           如果一个类A是类B的一种,或者B类是A类的一种,这个时候使用"继承"
                           体现的一种"is a"的关系
                                   水果
                                         苹果
                                          香蕉
                                         橘子...
 
         所有开发原则(接口分离/迪米特/开闭原则/依赖倒置...)都必须遵循: "低耦合,高内聚"(核心原则)
 
                  耦合:就是类和类的关系,越少越好  (耦合度只能降低,不能去避免!)
                  内聚: 某一个类完成某件事情能力!(一个类能完成,尽量一个类去完成!)

* 继承的好处:
 *              1)类和类之间的关系,只支持"单继承"
 *
 *                      class Fu{}
 *                      class GrandFu{}
 *                      class Zi extends Fu,GrandFu{}//错误的!  (多继承,Java没有多继承的概念)
 *
 *             2)不支持多继承,但是可以 "多层继承"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值